From e4bf69833fa9a4dd81671ba65e36180927a04523 Mon Sep 17 00:00:00 2001 From: jinmingyang <2214962083@qq.com> Date: Mon, 26 Jan 2026 21:39:11 +0800 Subject: [PATCH 01/10] chore: remove obsolete VibeSync configuration files and update changelog links --- .vibe-sync.json | 13 ------------- cli/.vibe-sync.json | 12 ------------ website/content/en/_meta.ts | 2 +- website/content/zh/_meta.ts | 2 +- 4 files changed, 2 insertions(+), 27 deletions(-) delete mode 100644 .vibe-sync.json delete mode 100644 cli/.vibe-sync.json diff --git a/.vibe-sync.json b/.vibe-sync.json deleted file mode 100644 index c3cdf74..0000000 --- a/.vibe-sync.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "version": "1.0.0", - "level": "project", - "source_tool": "claude-code", - "target_tools": ["codex", "cursor", "opencode"], - "sync_config": { - "skills": true, - "mcp": true, - "agents": false, - "commands": true - }, - "use_symlinks_for_skills": true -} diff --git a/cli/.vibe-sync.json b/cli/.vibe-sync.json deleted file mode 100644 index f24025c..0000000 --- a/cli/.vibe-sync.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "version": "1.0.0", - "level": "project", - "source_tool": "claude-code", - "target_tools": ["codex", "cursor", "opencode"], - "sync_config": { - "skills": true, - "mcp": true, - "agents": false, - "commands": true - } -} diff --git a/website/content/en/_meta.ts b/website/content/en/_meta.ts index d9f0b81..70ec68b 100644 --- a/website/content/en/_meta.ts +++ b/website/content/en/_meta.ts @@ -35,7 +35,7 @@ export default { }, changelog: { title: "Changelog", - href: "https://github.com/nicepkg/vsync/blob/main/CHANGELOG.md", + href: "https://github.com/nicepkg/vsync/blob/main/cli/CHANGELOG.md", }, release: { title: "Release", diff --git a/website/content/zh/_meta.ts b/website/content/zh/_meta.ts index 923a129..5f45b04 100644 --- a/website/content/zh/_meta.ts +++ b/website/content/zh/_meta.ts @@ -35,7 +35,7 @@ export default { }, changelog: { title: "更新日志", - href: "https://github.com/nicepkg/vsync/blob/main/CHANGELOG.md", + href: "https://github.com/nicepkg/vsync/blob/main/cli/CHANGELOG.md", }, release: { title: "发布", From c6b436762fffe6dd8ff14840a002766827a3ec9f Mon Sep 17 00:00:00 2001 From: jinmingyang <2214962083@qq.com> Date: Mon, 26 Jan 2026 21:53:30 +0800 Subject: [PATCH 02/10] chore: update package references to @nicepkg/vsync and release version 1.0.9 --- .changeset/four-dogs-fold08.md | 5 ----- .changeset/four-dogs-fold09.md | 5 +++++ .github/workflows/preview-package.yml | 2 +- README.md | 4 ++-- README_cn.md | 4 ++-- cli/package.json | 2 +- package.json | 4 ++-- scripts/release-publish.sh | 2 +- website/content/en/docs/advanced-features.mdx | 4 ++-- website/content/en/docs/getting-started.mdx | 4 ++-- website/content/en/docs/index.mdx | 2 +- website/content/en/docs/quick-reference.mdx | 2 +- website/content/zh/docs/advanced-features.mdx | 4 ++-- website/content/zh/docs/getting-started.mdx | 4 ++-- website/content/zh/docs/index.mdx | 2 +- website/content/zh/docs/quick-reference.mdx | 2 +- website/src/components/home/landing-page.tsx | 2 +- 17 files changed, 27 insertions(+), 27 deletions(-) delete mode 100644 .changeset/four-dogs-fold08.md create mode 100644 .changeset/four-dogs-fold09.md diff --git a/.changeset/four-dogs-fold08.md b/.changeset/four-dogs-fold08.md deleted file mode 100644 index 679117a..0000000 --- a/.changeset/four-dogs-fold08.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"vsync": patch ---- - -release first version 08 diff --git a/.changeset/four-dogs-fold09.md b/.changeset/four-dogs-fold09.md new file mode 100644 index 0000000..2d34ddc --- /dev/null +++ b/.changeset/four-dogs-fold09.md @@ -0,0 +1,5 @@ +--- +"@nicepkg/vsync": patch +--- + +release first version 09 diff --git a/.github/workflows/preview-package.yml b/.github/workflows/preview-package.yml index 7d03150..25e2122 100644 --- a/.github/workflows/preview-package.yml +++ b/.github/workflows/preview-package.yml @@ -24,7 +24,7 @@ jobs: matrix: package: # When you add a new package, add a new line here - - name: "vsync" + - name: "@nicepkg/vsync" dir: "cli" display: "vsync (CLI)" # - name: "core" diff --git a/README.md b/README.md index 2ee6a0f..ca47a7d 100644 --- a/README.md +++ b/README.md @@ -117,10 +117,10 @@ flowchart TD ```bash # Option 1: Run directly with npx (no installation needed) -npx vsync +npx @nicepkg/vsync # Option 2: Install globally with npm -npm install -g vsync +npm install -g @nicepkg/vsync # Verify installation vsync --version diff --git a/README_cn.md b/README_cn.md index 0968e7c..20ca577 100644 --- a/README_cn.md +++ b/README_cn.md @@ -117,10 +117,10 @@ flowchart TD ```bash # 方式 1: 使用 npx 直接运行 (无需安装) -npx vsync +npx @nicepkg/vsync # 方式 2: 使用 npm 全局安装 -npm install -g vsync +npm install -g @nicepkg/vsync # 验证安装 vsync --version diff --git a/cli/package.json b/cli/package.json index b44bd45..ecf90c9 100644 --- a/cli/package.json +++ b/cli/package.json @@ -1,5 +1,5 @@ { - "name": "vsync", + "name": "@nicepkg/vsync", "version": "1.0.4", "description": "CLI for vsync - AI coding tool config synchronizer", "type": "module", diff --git a/package.json b/package.json index b877774..ead1c38 100644 --- a/package.json +++ b/package.json @@ -14,8 +14,8 @@ "build:website": "pnpm --filter website build", "start:website": "pnpm --filter website start", "start:static-website": "pnpm --filter website start:static", - "dev:cli": "pnpm --filter vsync dev", - "build:cli": "pnpm --filter vsync build", + "dev:cli": "pnpm --filter @nicepkg/vsync dev", + "build:cli": "pnpm --filter @nicepkg/vsync build", "test": "pnpm -r run test", "test:coverage": "pnpm -r run test:coverage", "lint": "pnpm -r run lint", diff --git a/scripts/release-publish.sh b/scripts/release-publish.sh index 463ecd6..25d06b0 100644 --- a/scripts/release-publish.sh +++ b/scripts/release-publish.sh @@ -1,6 +1,6 @@ #!/usr/bin/env bash set -euo pipefail -pnpm --filter vsync run build +pnpm --filter @nicepkg/vsync run build pnpm ci:publish pnpm changeset tag diff --git a/website/content/en/docs/advanced-features.mdx b/website/content/en/docs/advanced-features.mdx index f569381..3d79ed8 100644 --- a/website/content/en/docs/advanced-features.mdx +++ b/website/content/en/docs/advanced-features.mdx @@ -332,7 +332,7 @@ jobs: node-version: '18' - name: Sync configs - run: npx vsync sync --yes + run: npx @nicepkg/vsync sync --yes env: # Add any required environment variables GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} @@ -349,7 +349,7 @@ Automatically sync before commits: # Check if .vsync.json exists if [ -f .vsync.json ]; then echo "Running vsync..." - npx vsync sync --yes + npx @nicepkg/vsync sync --yes # Add synced files to commit git add .cursor/ .opencode/ .codex/ diff --git a/website/content/en/docs/getting-started.mdx b/website/content/en/docs/getting-started.mdx index f903072..d0e5d35 100644 --- a/website/content/en/docs/getting-started.mdx +++ b/website/content/en/docs/getting-started.mdx @@ -16,13 +16,13 @@ vsync can be used without installation via `npx`, or installed globally for conv No installation needed—just run: ```bash -npx vsync +npx @nicepkg/vsync ``` ### Option 2: Global Installation ```bash -npm install -g vsync +npm install -g @nicepkg/vsync ``` Verify the installation: diff --git a/website/content/en/docs/index.mdx b/website/content/en/docs/index.mdx index 33f35e9..30def32 100644 --- a/website/content/en/docs/index.mdx +++ b/website/content/en/docs/index.mdx @@ -78,7 +78,7 @@ Native support for English and Chinese (中文). ```bash # Install -npm install -g vsync +npm install -g @nicepkg/vsync # Initialize vsync init diff --git a/website/content/en/docs/quick-reference.mdx b/website/content/en/docs/quick-reference.mdx index 2a5fb11..30090f2 100644 --- a/website/content/en/docs/quick-reference.mdx +++ b/website/content/en/docs/quick-reference.mdx @@ -294,7 +294,7 @@ vsync sync ```bash # GitHub Actions - name: Sync configs - run: npx vsync sync --yes + run: npx @nicepkg/vsync sync --yes ``` **[Learn more →](../advanced-features#cicd-integration)** diff --git a/website/content/zh/docs/advanced-features.mdx b/website/content/zh/docs/advanced-features.mdx index 6c4c644..7748b5b 100644 --- a/website/content/zh/docs/advanced-features.mdx +++ b/website/content/zh/docs/advanced-features.mdx @@ -332,7 +332,7 @@ jobs: node-version: '18' - name: Sync configs - run: npx vsync sync --yes + run: npx @nicepkg/vsync sync --yes env: # 添加任何所需的环境变量 GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} @@ -349,7 +349,7 @@ jobs: # 检查 .vsync.json 是否存在 if [ -f .vsync.json ]; then echo "Running vsync..." - npx vsync sync --yes + npx @nicepkg/vsync sync --yes # 将同步的文件添加到提交 git add .cursor/ .opencode/ .codex/ diff --git a/website/content/zh/docs/getting-started.mdx b/website/content/zh/docs/getting-started.mdx index 6380a5a..2ee6ad6 100644 --- a/website/content/zh/docs/getting-started.mdx +++ b/website/content/zh/docs/getting-started.mdx @@ -16,13 +16,13 @@ vsync 可以通过 `npx` 直接使用无需安装,也可以全局安装以便 无需安装——直接运行: ```bash -npx vsync +npx @nicepkg/vsync ``` ### 方式 2:全局安装 ```bash -npm install -g vsync +npm install -g @nicepkg/vsync ``` 验证安装: diff --git a/website/content/zh/docs/index.mdx b/website/content/zh/docs/index.mdx index 2b46bcd..56190dd 100644 --- a/website/content/zh/docs/index.mdx +++ b/website/content/zh/docs/index.mdx @@ -78,7 +78,7 @@ vsync 管理以下配置类型: ```bash # 安装 -npm install -g vsync +npm install -g @nicepkg/vsync # 初始化 vsync init diff --git a/website/content/zh/docs/quick-reference.mdx b/website/content/zh/docs/quick-reference.mdx index feced50..0301f70 100644 --- a/website/content/zh/docs/quick-reference.mdx +++ b/website/content/zh/docs/quick-reference.mdx @@ -294,7 +294,7 @@ vsync sync ```bash # GitHub Actions - name: Sync configs - run: npx vsync sync --yes + run: npx @nicepkg/vsync sync --yes ``` **[了解更多 →](../advanced-features#cicd-integration)** diff --git a/website/src/components/home/landing-page.tsx b/website/src/components/home/landing-page.tsx index 8f23a2a..2f8b5f5 100644 --- a/website/src/components/home/landing-page.tsx +++ b/website/src/components/home/landing-page.tsx @@ -272,7 +272,7 @@ export function LandingPage({ lang }: { lang: "en" | "zh" }) {
$ - npx vsync sync + npx @nicepkg/vsync sync
From 70b0ef1c9746d20acc2fde23c48df1f24610b90d Mon Sep 17 00:00:00 2001 From: jinmingyang <2214962083@qq.com> Date: Mon, 26 Jan 2026 22:08:46 +0800 Subject: [PATCH 03/10] chore: update package.json with repository details, author information, and keywords --- cli/package.json | 49 ++++++++++++++++++++++++++++++++++++++++++++---- 1 file changed, 45 insertions(+), 4 deletions(-) diff --git a/cli/package.json b/cli/package.json index d9a0e52..48f5b3c 100644 --- a/cli/package.json +++ b/cli/package.json @@ -3,6 +3,51 @@ "version": "1.0.5", "description": "CLI for vsync - AI coding tool config synchronizer", "type": "module", + "repository": { + "type": "git", + "url": "git+https://github.com/nicepkg/vsync.git" + }, + "homepage": "https://github.com/nicepkg/vsync#readme", + "bugs": { + "url": "https://github.com/nicepkg/vsync/issues" + }, + "license": "MIT", + "keywords": [ + "ai", + "ai-coding", + "ai-tools", + "ai-assistant", + "claude", + "claude-code", + "cursor", + "opencode", + "codex", + "mcp", + "mcp-server", + "mcp-servers", + "config", + "config-sync", + "configuration", + "sync", + "synchronize", + "cli", + "devtools", + "developer-tools", + "productivity", + "skills", + "agents", + "commands", + "ide", + "vscode", + "copilot", + "coding-assistant", + "automation" + ], + "author": { + "name": "Jinming Yang", + "email": "2214962083@qq.com", + "url": "https://github.com/2214962083" + }, "publishConfig": { "access": "public" }, @@ -49,9 +94,5 @@ "typescript-eslint": "^8.53.1", "vitest": "^4.0.18", "zod": "^4.3.6" - }, - "engines": { - "node": ">=24.0.0", - "pnpm": ">=10.0.0" } } From c160cd4d9faa45f7225de2a3479b109939bc17c2 Mon Sep 17 00:00:00 2001 From: jinmingyang <2214962083@qq.com> Date: Mon, 26 Jan 2026 22:12:12 +0800 Subject: [PATCH 04/10] chore: update package.json description to clarify functionality of the CLI tool --- cli/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cli/package.json b/cli/package.json index 48f5b3c..34c67bc 100644 --- a/cli/package.json +++ b/cli/package.json @@ -1,7 +1,7 @@ { "name": "@nicepkg/vsync", "version": "1.0.5", - "description": "CLI for vsync - AI coding tool config synchronizer", + "description": "Sync MCP servers, Skills, Agents & Commands across Claude Code, Cursor, OpenCode, Codex. One config, all tools.", "type": "module", "repository": { "type": "git", From aaa18d284370510c81203e2b02fcb2a02f93ead1 Mon Sep 17 00:00:00 2001 From: jinmingyang <2214962083@qq.com> Date: Mon, 26 Jan 2026 22:20:33 +0800 Subject: [PATCH 05/10] chore: remove obsolete changeset for version 10 --- .changeset/four-dogs-fold10.md | 5 ----- 1 file changed, 5 deletions(-) delete mode 100644 .changeset/four-dogs-fold10.md diff --git a/.changeset/four-dogs-fold10.md b/.changeset/four-dogs-fold10.md deleted file mode 100644 index fd0af82..0000000 --- a/.changeset/four-dogs-fold10.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@nicepkg/vsync": patch ---- - -release first version 10 From 72de450ba8f5541b2490f265bbfd6f3bfdb2b687 Mon Sep 17 00:00:00 2001 From: jinmingyang <2214962083@qq.com> Date: Mon, 26 Jan 2026 22:37:51 +0800 Subject: [PATCH 06/10] feat: add isMainModule function to determine if the current module is the main entry point --- cli/src/index.ts | 22 +++++++++++++++- cli/src/utils/config-initializer.ts | 4 +-- cli/test/index.test.ts | 39 ++++++++++++++++++++++++++++- 3 files changed, 61 insertions(+), 4 deletions(-) diff --git a/cli/src/index.ts b/cli/src/index.ts index 7bcfd50..699c8c5 100644 --- a/cli/src/index.ts +++ b/cli/src/index.ts @@ -7,14 +7,34 @@ * Single source of truth → Compile to multiple formats → Diff-based sync */ +import { realpathSync } from "node:fs"; +import { resolve } from "node:path"; +import { fileURLToPath } from "node:url"; import { runCLI } from "./cli-setup.js"; export async function main(): Promise { await runCLI(); } +export function isMainModule( + argvPath: string | undefined, + moduleUrl: string, +): boolean { + if (!argvPath) { + return false; + } + + try { + const argvRealPath = realpathSync(resolve(argvPath)); + const moduleRealPath = realpathSync(fileURLToPath(moduleUrl)); + return argvRealPath === moduleRealPath; + } catch { + return false; + } +} + // Run CLI if this is the main module -if (import.meta.url === `file://${process.argv[1]}`) { +if (isMainModule(process.argv[1], import.meta.url)) { main().catch((error) => { console.error("Fatal error:", error); process.exit(1); diff --git a/cli/src/utils/config-initializer.ts b/cli/src/utils/config-initializer.ts index 43e593a..71030ca 100644 --- a/cli/src/utils/config-initializer.ts +++ b/cli/src/utils/config-initializer.ts @@ -47,11 +47,11 @@ export async function ensureLanguageConfig(): Promise { message: "Choose your preferred language / 选择你的语言偏好:", choices: [ { - name: `English (detected: ${systemLang === "en" ? "✓" : "×"})`, + name: `English`, value: "en", }, { - name: `中文 (detected: ${systemLang === "zh" ? "✓" : "×"})`, + name: `中文`, value: "zh", }, ], diff --git a/cli/test/index.test.ts b/cli/test/index.test.ts index b76e5b2..b0511fc 100644 --- a/cli/test/index.test.ts +++ b/cli/test/index.test.ts @@ -1,5 +1,9 @@ import { describe, it, expect } from "vitest"; -import { main } from "@src/index.js"; +import { mkdtemp, rm, symlink, writeFile } from "node:fs/promises"; +import { tmpdir } from "node:os"; +import { join, relative } from "node:path"; +import { pathToFileURL } from "node:url"; +import { isMainModule, main } from "@src/index.js"; describe("CLI Entry Point", () => { it("should export main function", () => { @@ -10,4 +14,37 @@ describe("CLI Entry Point", () => { it("should be async function", () => { expect(main.constructor.name).toBe("AsyncFunction"); }); + + it("detects main module with relative argv path", async () => { + const dir = await mkdtemp(join(tmpdir(), "vsync-index-")); + const filePath = join(dir, "index.js"); + await writeFile(filePath, "console.log('test');"); + + try { + const metaUrl = pathToFileURL(filePath).href; + const argvPath = relative(process.cwd(), filePath); + expect(isMainModule(argvPath, metaUrl)).toBe(true); + } finally { + await rm(dir, { recursive: true, force: true }); + } + }); + + it("detects main module when argv is a symlink", async () => { + const dir = await mkdtemp(join(tmpdir(), "vsync-index-")); + const filePath = join(dir, "index.js"); + const linkPath = join(dir, "index-link.js"); + await writeFile(filePath, "console.log('test');"); + await symlink(filePath, linkPath); + + try { + const metaUrl = pathToFileURL(filePath).href; + expect(isMainModule(linkPath, metaUrl)).toBe(true); + } finally { + await rm(dir, { recursive: true, force: true }); + } + }); + + it("returns false when argv is missing", () => { + expect(isMainModule(undefined, "file:///tmp/index.js")).toBe(false); + }); }); From aeff2699246202a75c515e68d4400a7885345383 Mon Sep 17 00:00:00 2001 From: jinmingyang <2214962083@qq.com> Date: Mon, 26 Jan 2026 22:38:19 +0800 Subject: [PATCH 07/10] fix: resolve CLI functionality issue --- .changeset/short-coins-push.md | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 .changeset/short-coins-push.md diff --git a/.changeset/short-coins-push.md b/.changeset/short-coins-push.md new file mode 100644 index 0000000..c1b6e28 --- /dev/null +++ b/.changeset/short-coins-push.md @@ -0,0 +1,5 @@ +--- +"@nicepkg/vsync": patch +--- + +fix cli not working From f12625508713c1a38ed702e3f695041b0a632d2d Mon Sep 17 00:00:00 2001 From: jinmingyang <2214962083@qq.com> Date: Mon, 26 Jan 2026 23:02:02 +0800 Subject: [PATCH 08/10] docs: add full documentation link to README files --- README.md | 2 ++ README_cn.md | 2 ++ scripts/release-publish.sh | 3 +++ 3 files changed, 7 insertions(+) diff --git a/README.md b/README.md index ca47a7d..3714662 100644 --- a/README.md +++ b/README.md @@ -113,6 +113,8 @@ flowchart TD ## ⚡ Quick Start +Full documentation: https://vsync.xiaominglab.com + ### Installation ```bash diff --git a/README_cn.md b/README_cn.md index 20ca577..4b2e0ae 100644 --- a/README_cn.md +++ b/README_cn.md @@ -113,6 +113,8 @@ flowchart TD ## ⚡ 快速开始 +完整文档:https://vsync.xiaominglab.com + ### 安装 ```bash diff --git a/scripts/release-publish.sh b/scripts/release-publish.sh index 25d06b0..0a7de79 100644 --- a/scripts/release-publish.sh +++ b/scripts/release-publish.sh @@ -1,6 +1,9 @@ #!/usr/bin/env bash set -euo pipefail +cp README.md cli/README.md +cp README_cn.md cli/README_cn.md + pnpm --filter @nicepkg/vsync run build pnpm ci:publish pnpm changeset tag From b0e23bf810896c6214ceb94b1cc48abc9dc98c55 Mon Sep 17 00:00:00 2001 From: jinmingyang <2214962083@qq.com> Date: Mon, 26 Jan 2026 23:03:15 +0800 Subject: [PATCH 09/10] chore: add changeset for release v1.0.9 with patch for @nicepkg/vsync --- .changeset/{short-coins-push.md => wet-streets-stay.md} | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) rename .changeset/{short-coins-push.md => wet-streets-stay.md} (62%) diff --git a/.changeset/short-coins-push.md b/.changeset/wet-streets-stay.md similarity index 62% rename from .changeset/short-coins-push.md rename to .changeset/wet-streets-stay.md index c1b6e28..8594ef8 100644 --- a/.changeset/short-coins-push.md +++ b/.changeset/wet-streets-stay.md @@ -2,4 +2,4 @@ "@nicepkg/vsync": patch --- -fix cli not working +release v1.0.9 From 245879cfd8feed245750d711c3c9e161fc52c46f Mon Sep 17 00:00:00 2001 From: jinmingyang <2214962083@qq.com> Date: Tue, 27 Jan 2026 09:24:17 +0800 Subject: [PATCH 10/10] chore: update documentation links to absolute paths and remove obsolete changeset --- .changeset/wet-streets-stay.md | 5 --- website/content/en/_meta.ts | 4 +- website/content/en/docs/advanced-features.mdx | 6 +-- website/content/en/docs/cli-commands.mdx | 6 +-- website/content/en/docs/configuration.mdx | 6 +-- website/content/en/docs/core-concepts.mdx | 6 +-- website/content/en/docs/getting-started.mdx | 26 ++++++------- website/content/en/docs/index.mdx | 18 ++++----- website/content/en/docs/quick-reference.mdx | 38 +++++++++---------- website/content/zh/_meta.ts | 4 +- website/content/zh/docs/advanced-features.mdx | 6 +-- website/content/zh/docs/cli-commands.mdx | 6 +-- website/content/zh/docs/configuration.mdx | 6 +-- website/content/zh/docs/core-concepts.mdx | 6 +-- website/content/zh/docs/getting-started.mdx | 26 ++++++------- website/content/zh/docs/index.mdx | 18 ++++----- website/content/zh/docs/quick-reference.mdx | 38 +++++++++---------- 17 files changed, 110 insertions(+), 115 deletions(-) delete mode 100644 .changeset/wet-streets-stay.md diff --git a/.changeset/wet-streets-stay.md b/.changeset/wet-streets-stay.md deleted file mode 100644 index 8594ef8..0000000 --- a/.changeset/wet-streets-stay.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@nicepkg/vsync": patch ---- - -release v1.0.9 diff --git a/website/content/en/_meta.ts b/website/content/en/_meta.ts index 70ec68b..8bce0a1 100644 --- a/website/content/en/_meta.ts +++ b/website/content/en/_meta.ts @@ -23,7 +23,7 @@ export default { commands: { title: "Commands", type: "page", - href: "./docs/cli-commands", + href: "/en/docs/cli-commands", }, [packageJson.version]: { title: `v${packageJson.version}`, @@ -31,7 +31,7 @@ export default { items: { contributing: { title: "Contributing", - href: "./contributing", + href: "/en/contributing", }, changelog: { title: "Changelog", diff --git a/website/content/en/docs/advanced-features.mdx b/website/content/en/docs/advanced-features.mdx index 3d79ed8..92fe650 100644 --- a/website/content/en/docs/advanced-features.mdx +++ b/website/content/en/docs/advanced-features.mdx @@ -447,6 +447,6 @@ cat .vsync.json ## Next Steps -- Check the [FAQ](../faq) for common questions -- Read about [Contributing](../../contributing) to vsync -- Explore [Configuration](../configuration) details +- Check the [FAQ](/en/docs/faq) for common questions +- Read about [Contributing](/en/contributing) to vsync +- Explore [Configuration](/en/docs/configuration) details diff --git a/website/content/en/docs/cli-commands.mdx b/website/content/en/docs/cli-commands.mdx index 6aaefd2..f2a50f6 100644 --- a/website/content/en/docs/cli-commands.mdx +++ b/website/content/en/docs/cli-commands.mdx @@ -549,6 +549,6 @@ vsync sync --help ## Next Steps -- Learn about [Advanced Features](../advanced-features) -- Check the [FAQ](../faq) for troubleshooting -- Explore [Configuration](../configuration) options +- Learn about [Advanced Features](/en/docs/advanced-features) +- Check the [FAQ](/en/docs/faq) for troubleshooting +- Explore [Configuration](/en/docs/configuration) options diff --git a/website/content/en/docs/configuration.mdx b/website/content/en/docs/configuration.mdx index 0754c27..af063cd 100644 --- a/website/content/en/docs/configuration.mdx +++ b/website/content/en/docs/configuration.mdx @@ -325,6 +325,6 @@ Always use variable references, never hardcode: ## Next Steps -- Learn all [CLI Commands](../cli-commands) -- Explore [Advanced Features](../advanced-features) -- Check the [FAQ](../faq) for troubleshooting +- Learn all [CLI Commands](/en/docs/cli-commands) +- Explore [Advanced Features](/en/docs/advanced-features) +- Check the [FAQ](/en/docs/faq) for troubleshooting diff --git a/website/content/en/docs/core-concepts.mdx b/website/content/en/docs/core-concepts.mdx index 334b3f1..fa0e324 100644 --- a/website/content/en/docs/core-concepts.mdx +++ b/website/content/en/docs/core-concepts.mdx @@ -247,6 +247,6 @@ Quick command shortcuts. Now that you understand the core concepts: -- Learn about [Configuration](../configuration) file structure -- Explore [CLI Commands](../cli-commands) in detail -- Discover [Advanced Features](../advanced-features) like symlinks +- Learn about [Configuration](/en/docs/configuration) file structure +- Explore [CLI Commands](/en/docs/cli-commands) in detail +- Discover [Advanced Features](/en/docs/advanced-features) like symlinks diff --git a/website/content/en/docs/getting-started.mdx b/website/content/en/docs/getting-started.mdx index d0e5d35..192035f 100644 --- a/website/content/en/docs/getting-started.mdx +++ b/website/content/en/docs/getting-started.mdx @@ -47,7 +47,7 @@ For global user-level configuration: vsync init --user ``` -> 💡 **Tip**: Learn more about [project vs user levels](../core-concepts#configuration-layers) in Core Concepts. +> 💡 **Tip**: Learn more about [project vs user levels](/en/docs/core-concepts#configuration-layers) in Core Concepts. ### Interactive Setup @@ -79,7 +79,7 @@ The CLI will guide you through the setup process: ✅ Setup complete! Run vsync sync to start syncing ``` -> 📚 **Learn more**: See [Configuration](../configuration) for detailed config options. +> 📚 **Learn more**: See [Configuration](/en/docs/configuration) for detailed config options. ### 2. Sync Your Configs @@ -96,7 +96,7 @@ vsync sync --dry-run vsync sync --prune ``` -> 🔍 **Details**: Understand [sync modes](../core-concepts#sync-modes) in Core Concepts. +> 🔍 **Details**: Understand [sync modes](/en/docs/core-concepts#sync-modes) in Core Concepts. ## Understanding the Output @@ -130,11 +130,11 @@ cursor: Now that you've installed and initialized vsync: -1. **Learn the Concepts**: Understand [Core Concepts](../core-concepts) like sync modes and layers -2. **Configure Tools**: Explore [Configuration](../configuration) options for each tool -3. **Master Commands**: Check out all [CLI Commands](../cli-commands) -4. **Quick Reference**: Use the [Quick Reference](../quick-reference) cheat sheet -5. **Advanced Usage**: Dive into [Advanced Features](../advanced-features) like symlinks +1. **Learn the Concepts**: Understand [Core Concepts](/en/docs/core-concepts) like sync modes and layers +2. **Configure Tools**: Explore [Configuration](/en/docs/configuration) options for each tool +3. **Master Commands**: Check out all [CLI Commands](/en/docs/cli-commands) +4. **Quick Reference**: Use the [Quick Reference](/en/docs/quick-reference) cheat sheet +5. **Advanced Usage**: Dive into [Advanced Features](/en/docs/advanced-features) like symlinks ## Real-World Examples @@ -157,7 +157,7 @@ vsync init --user # Configure which tools to sync vsync sync --user # Sync personal Skills, MCP servers globally ``` -> 💡 **Related**: Learn about [configuration layers](../core-concepts#configuration-layers). +> 💡 **Related**: Learn about [configuration layers](/en/docs/core-concepts#configuration-layers). ### Migration Between Tools @@ -169,7 +169,7 @@ vsync init # Choose Cursor as SOURCE (reference standard) vsync sync # All configs migrated instantly! ``` -> 📖 **More info**: See [FAQ - Migration Questions](../faq#migration-questions). +> 📖 **More info**: See [FAQ - Migration Questions](/en/docs/faq#migration-questions). ## Troubleshooting @@ -185,12 +185,12 @@ Make sure the tool's configuration directory exists (e.g., `.claude/`, `.cursor/ On macOS/Linux, you may need to grant permissions for file operations. Check that you have write access to the target directories. -> 🔧 **More help**: See the [FAQ](../faq#troubleshooting) for detailed troubleshooting. +> 🔧 **More help**: See the [FAQ](/en/docs/faq#troubleshooting) for detailed troubleshooting. ## Getting Help - Run `vsync --help` for command overview - Run `vsync --help` for specific command help -- Check the [FAQ](../faq) for common questions -- Use the [Quick Reference](../quick-reference) for command examples +- Check the [FAQ](/en/docs/faq) for common questions +- Use the [Quick Reference](/en/docs/quick-reference) for command examples - Open an issue on [GitHub](https://github.com/nicepkg/vsync/issues) diff --git a/website/content/en/docs/index.mdx b/website/content/en/docs/index.mdx index 30def32..a8d0dae 100644 --- a/website/content/en/docs/index.mdx +++ b/website/content/en/docs/index.mdx @@ -21,19 +21,19 @@ Welcome to the vsync documentation! Here you'll find everything you need to sync ### Getting Started -- **[Getting Started](../getting-started)** - Installation, initialization, and first sync -- **[Core Concepts](../core-concepts)** - Understanding sync modes, layers, and workflows +- **[Getting Started](/en/docs/getting-started)** - Installation, initialization, and first sync +- **[Core Concepts](/en/docs/core-concepts)** - Understanding sync modes, layers, and workflows ### Reference -- **[Configuration](../configuration)** - Config file structure and tool-specific formats -- **[CLI Commands](../cli-commands)** - Complete command reference with examples -- **[Quick Reference](../quick-reference)** - Command cheat sheet and common patterns +- **[Configuration](/en/docs/configuration)** - Config file structure and tool-specific formats +- **[CLI Commands](/en/docs/cli-commands)** - Complete command reference with examples +- **[Quick Reference](/en/docs/quick-reference)** - Command cheat sheet and common patterns ### Advanced -- **[Advanced Features](../advanced-features)** - Symlinks, performance optimization, and more -- **[FAQ](../faq)** - Common questions and troubleshooting +- **[Advanced Features](/en/docs/advanced-features)** - Symlinks, performance optimization, and more +- **[FAQ](/en/docs/faq)** - Common questions and troubleshooting ## Supported AI Tools @@ -91,6 +91,6 @@ vsync sync - **GitHub Issues**: [Report bugs or request features](https://github.com/nicepkg/vsync/issues) - **CLI Help**: Run `vsync --help` or `vsync --help` -- **Contributing**: Check out the [Contributing Guide](../../contributing) +- **Contributing**: Check out the [Contributing Guide](/en/contributing) -Ready to get started? Head over to [Getting Started](../getting-started)! +Ready to get started? Head over to [Getting Started](/en/docs/getting-started)! diff --git a/website/content/en/docs/quick-reference.mdx b/website/content/en/docs/quick-reference.mdx index 30090f2..cddf611 100644 --- a/website/content/en/docs/quick-reference.mdx +++ b/website/content/en/docs/quick-reference.mdx @@ -33,7 +33,7 @@ vsync init --user vsync sync --user ``` -**[Learn more →](../getting-started)** +**[Learn more →](/en/docs/getting-started)** ### Daily Sync @@ -68,7 +68,7 @@ vsync clean skill/old-skill vsync sync --prune ``` -**[Learn more →](../cli-commands#clean)** +**[Learn more →](/en/docs/cli-commands#clean)** ## Sync Modes @@ -82,7 +82,7 @@ vsync sync - ✅ Updates existing items - ❌ Never deletes -**[Learn more →](../core-concepts#safe-mode-default)** +**[Learn more →](/en/docs/core-concepts#safe-mode-default)** ### Prune Mode @@ -94,7 +94,7 @@ vsync sync --prune - ✅ Updates existing items - ⚠️ Deletes items not in source -**[Learn more →](../core-concepts#prune-mode)** +**[Learn more →](/en/docs/core-concepts#prune-mode)** ## Configuration Layers @@ -118,7 +118,7 @@ vsync sync --user # Syncs global configs **Use for**: Personal preferences, global skills -**[Learn more →](../core-concepts#configuration-layers)** +**[Learn more →](/en/docs/core-concepts#configuration-layers)** ## Command Examples @@ -206,7 +206,7 @@ vsync clean --user vsync clean skill/old-skill -y ``` -**[Learn more →](../cli-commands#clean)** +**[Learn more →](/en/docs/cli-commands#clean)** ### import @@ -237,7 +237,7 @@ vsync import ../other-project --user } ``` -**[Learn more →](../configuration)** +**[Learn more →](/en/docs/configuration)** ### Key Settings @@ -261,7 +261,7 @@ vsync import ../other-project --user | OpenCode | `{env:VAR}` | `{env:API_KEY}` | | Codex | No interpolation | Direct value | -**[Learn more →](../configuration#mcp-configuration-differences)** +**[Learn more →](/en/docs/configuration#mcp-configuration-differences)** ### Config File Locations @@ -272,7 +272,7 @@ vsync import ../other-project --user | OpenCode | `opencode.json(c)` | `~/.opencode/opencode.json` | | Codex | `config.toml` | `~/.codex/config.toml` | -**[Learn more →](../configuration#supported-tools)** +**[Learn more →](/en/docs/configuration#supported-tools)** ## Common Patterns @@ -297,7 +297,7 @@ vsync sync run: npx @nicepkg/vsync sync --yes ``` -**[Learn more →](../advanced-features#cicd-integration)** +**[Learn more →](/en/docs/advanced-features#cicd-integration)** ### Migration Workflow @@ -312,7 +312,7 @@ vsync plan vsync sync ``` -**[Learn more →](../faq#migration-questions)** +**[Learn more →](/en/docs/faq#migration-questions)** ## Exit Codes @@ -360,14 +360,14 @@ mkdir -p ~/.cursor vsync init ``` -**[More troubleshooting →](../faq#troubleshooting)** +**[More troubleshooting →](/en/docs/faq#troubleshooting)** ## Related Resources -- **[Getting Started](../getting-started)** - Detailed installation guide -- **[Core Concepts](../core-concepts)** - Understanding vsync -- **[CLI Commands](../cli-commands)** - Full command reference -- **[Configuration](../configuration)** - Config file details -- **[Advanced Features](../advanced-features)** - Symlinks, performance -- **[FAQ](../faq)** - Common questions -- **[Contributing](../../contributing)** - Development guide +- **[Getting Started](/en/docs/getting-started)** - Detailed installation guide +- **[Core Concepts](/en/docs/core-concepts)** - Understanding vsync +- **[CLI Commands](/en/docs/cli-commands)** - Full command reference +- **[Configuration](/en/docs/configuration)** - Config file details +- **[Advanced Features](/en/docs/advanced-features)** - Symlinks, performance +- **[FAQ](/en/docs/faq)** - Common questions +- **[Contributing](/en/contributing)** - Development guide diff --git a/website/content/zh/_meta.ts b/website/content/zh/_meta.ts index 5f45b04..f7434c3 100644 --- a/website/content/zh/_meta.ts +++ b/website/content/zh/_meta.ts @@ -23,7 +23,7 @@ export default { commands: { title: "CLI 命令", type: "page", - href: "./docs/cli-commands", + href: "/zh/docs/cli-commands", }, [packageJson.version]: { title: `v${packageJson.version}`, @@ -31,7 +31,7 @@ export default { items: { contributing: { title: "贡献指南", - href: "./contributing", + href: "/zh/contributing", }, changelog: { title: "更新日志", diff --git a/website/content/zh/docs/advanced-features.mdx b/website/content/zh/docs/advanced-features.mdx index 7748b5b..30fd9f6 100644 --- a/website/content/zh/docs/advanced-features.mdx +++ b/website/content/zh/docs/advanced-features.mdx @@ -447,6 +447,6 @@ cat .vsync.json ## 下一步 -- 查看 [FAQ](../faq) 了解常见问题 -- 阅读关于[贡献](../../contributing)到 vsync -- 探索[配置](../configuration)详情 +- 查看 [FAQ](/zh/docs/faq) 了解常见问题 +- 阅读关于[贡献](/zh/contributing)到 vsync +- 探索[配置](/zh/docs/configuration)详情 diff --git a/website/content/zh/docs/cli-commands.mdx b/website/content/zh/docs/cli-commands.mdx index 313c963..5c68958 100644 --- a/website/content/zh/docs/cli-commands.mdx +++ b/website/content/zh/docs/cli-commands.mdx @@ -549,6 +549,6 @@ vsync sync --help ## 下一步 -- 了解[高级功能](../advanced-features) -- 查看 [FAQ](../faq) 进行故障排除 -- 探索[配置](../configuration)选项 +- 了解[高级功能](/zh/docs/advanced-features) +- 查看 [FAQ](/zh/docs/faq) 进行故障排除 +- 探索[配置](/zh/docs/configuration)选项 diff --git a/website/content/zh/docs/configuration.mdx b/website/content/zh/docs/configuration.mdx index 852116d..f53f3ff 100644 --- a/website/content/zh/docs/configuration.mdx +++ b/website/content/zh/docs/configuration.mdx @@ -325,6 +325,6 @@ vsync 在 `.vsync-cache/manifest.json` 维护 manifest: ## 下一步 -- 学习所有 [CLI 命令](../cli-commands) -- 探索[高级功能](../advanced-features) -- 查看 [FAQ](../faq) 进行故障排除 +- 学习所有 [CLI 命令](/zh/docs/cli-commands) +- 探索[高级功能](/zh/docs/advanced-features) +- 查看 [FAQ](/zh/docs/faq) 进行故障排除 diff --git a/website/content/zh/docs/core-concepts.mdx b/website/content/zh/docs/core-concepts.mdx index a86a0c2..8e66dd2 100644 --- a/website/content/zh/docs/core-concepts.mdx +++ b/website/content/zh/docs/core-concepts.mdx @@ -247,6 +247,6 @@ vsync **从不展开**环境变量——它保留语法: 现在您理解了核心概念: -- 了解[配置](../configuration)文件结构 -- 详细探索 [CLI 命令](../cli-commands) -- 发现[高级功能](../advanced-features),如 symlinks +- 了解[配置](/zh/docs/configuration)文件结构 +- 详细探索 [CLI 命令](/zh/docs/cli-commands) +- 发现[高级功能](/zh/docs/advanced-features),如 symlinks diff --git a/website/content/zh/docs/getting-started.mdx b/website/content/zh/docs/getting-started.mdx index 2ee6ad6..45bfa74 100644 --- a/website/content/zh/docs/getting-started.mdx +++ b/website/content/zh/docs/getting-started.mdx @@ -47,7 +47,7 @@ vsync init vsync init --user ``` -> 💡 **提示**:在核心概念中了解更多关于[项目层与用户层](../core-concepts#configuration-layers)的信息。 +> 💡 **提示**:在核心概念中了解更多关于[项目层与用户层](/zh/docs/core-concepts#configuration-layers)的信息。 ### 交互式设置 @@ -79,7 +79,7 @@ CLI 将引导您完成设置过程: ✅ 设置完成!运行 vsync sync 开始同步 ``` -> 📚 **了解更多**:查看[配置指南](../configuration)了解详细配置选项。 +> 📚 **了解更多**:查看[配置指南](/zh/docs/configuration)了解详细配置选项。 ### 2. 同步您的配置 @@ -96,7 +96,7 @@ vsync sync --dry-run vsync sync --prune ``` -> 🔍 **详情**:在核心概念中理解[同步模式](../core-concepts#sync-modes)。 +> 🔍 **详情**:在核心概念中理解[同步模式](/zh/docs/core-concepts#sync-modes)。 ## 理解输出 @@ -130,11 +130,11 @@ cursor: 现在您已经安装并初始化了 vsync: -1. **学习概念**:理解[核心概念](../core-concepts),如同步模式和层级 -2. **配置工具**:探索每个工具的[配置](../configuration)选项 -3. **掌握命令**:查看所有 [CLI 命令](../cli-commands) -4. **快速参考**:使用[快速参考](../quick-reference)速查表 -5. **高级用法**:深入了解[高级功能](../advanced-features),如 symlinks +1. **学习概念**:理解[核心概念](/zh/docs/core-concepts),如同步模式和层级 +2. **配置工具**:探索每个工具的[配置](/zh/docs/configuration)选项 +3. **掌握命令**:查看所有 [CLI 命令](/zh/docs/cli-commands) +4. **快速参考**:使用[快速参考](/zh/docs/quick-reference)速查表 +5. **高级用法**:深入了解[高级功能](/zh/docs/advanced-features),如 symlinks ## 实际示例 @@ -157,7 +157,7 @@ vsync init --user # 配置要同步哪些工具 vsync sync --user # 全局同步个人 Skills、MCP 服务器 ``` -> 💡 **相关**:了解[配置层级](../core-concepts#configuration-layers)。 +> 💡 **相关**:了解[配置层级](/zh/docs/core-concepts#configuration-layers)。 ### 工具间迁移 @@ -169,7 +169,7 @@ vsync init # 选择 Cursor 作为 SOURCE(参考标准) vsync sync # 所有配置立即迁移! ``` -> 📖 **更多信息**:查看 [FAQ - 迁移问题](../faq#migration-questions)。 +> 📖 **更多信息**:查看 [FAQ - 迁移问题](/zh/docs/faq#migration-questions)。 ## 故障排除 @@ -185,12 +185,12 @@ vsync sync # 所有配置立即迁移! 在 macOS/Linux 上,您可能需要授予文件操作权限。检查您是否具有目标目录的写入权限。 -> 🔧 **更多帮助**:查看 [FAQ](../faq#troubleshooting) 获取详细的故障排除。 +> 🔧 **更多帮助**:查看 [FAQ](/zh/docs/faq#troubleshooting) 获取详细的故障排除。 ## 获取帮助 - 运行 `vsync --help` 获取命令概览 - 运行 `vsync --help` 获取特定命令帮助 -- 查看 [FAQ](../faq) 了解常见问题 -- 使用[快速参考](../quick-reference)获取命令示例 +- 查看 [FAQ](/zh/docs/faq) 了解常见问题 +- 使用[快速参考](/zh/docs/quick-reference)获取命令示例 - 在 [GitHub](https://github.com/nicepkg/vsync/issues) 上提交 issue diff --git a/website/content/zh/docs/index.mdx b/website/content/zh/docs/index.mdx index 56190dd..dc8bda5 100644 --- a/website/content/zh/docs/index.mdx +++ b/website/content/zh/docs/index.mdx @@ -21,19 +21,19 @@ description: vsync 完整指南 - 一条命令同步 AI 氛围编程工具 (Clau ### 入门 -- **[快速开始](../getting-started)** - 安装、初始化和首次同步 -- **[核心概念](../core-concepts)** - 理解同步模式、层级和工作流 +- **[快速开始](/zh/docs/getting-started)** - 安装、初始化和首次同步 +- **[核心概念](/zh/docs/core-concepts)** - 理解同步模式、层级和工作流 ### 参考 -- **[配置指南](../configuration)** - 配置文件结构和工具特定格式 -- **[CLI 命令](../cli-commands)** - 完整命令参考和示例 -- **[快速参考](../quick-reference)** - 命令速查表和常用模式 +- **[配置指南](/zh/docs/configuration)** - 配置文件结构和工具特定格式 +- **[CLI 命令](/zh/docs/cli-commands)** - 完整命令参考和示例 +- **[快速参考](/zh/docs/quick-reference)** - 命令速查表和常用模式 ### 进阶 -- **[高级功能](../advanced-features)** - Symlinks、性能优化等 -- **[常见问题](../faq)** - 常见问题和故障排除 +- **[高级功能](/zh/docs/advanced-features)** - Symlinks、性能优化等 +- **[常见问题](/zh/docs/faq)** - 常见问题和故障排除 ## 支持的 AI 工具 @@ -91,6 +91,6 @@ vsync sync - **GitHub Issues**:[报告 bug 或请求功能](https://github.com/nicepkg/vsync/issues) - **CLI 帮助**:运行 `vsync --help` 或 `vsync --help` -- **贡献**:查看[贡献指南](../../contributing) +- **贡献**:查看[贡献指南](/zh/contributing) -准备好开始了吗?前往[快速开始](../getting-started)! +准备好开始了吗?前往[快速开始](/zh/docs/getting-started)! diff --git a/website/content/zh/docs/quick-reference.mdx b/website/content/zh/docs/quick-reference.mdx index 0301f70..716cc2b 100644 --- a/website/content/zh/docs/quick-reference.mdx +++ b/website/content/zh/docs/quick-reference.mdx @@ -33,7 +33,7 @@ vsync init --user vsync sync --user ``` -**[了解更多 →](../getting-started)** +**[了解更多 →](/zh/docs/getting-started)** ### 日常同步 @@ -68,7 +68,7 @@ vsync clean skill/old-skill vsync sync --prune ``` -**[了解更多 →](../cli-commands#clean)** +**[了解更多 →](/zh/docs/cli-commands#clean)** ## 同步模式 @@ -82,7 +82,7 @@ vsync sync - ✅ 更新现有项 - ❌ 从不删除 -**[了解更多 →](../core-concepts#safe-mode-default)** +**[了解更多 →](/zh/docs/core-concepts#safe-mode-default)** ### Prune 模式 @@ -94,7 +94,7 @@ vsync sync --prune - ✅ 更新现有项 - ⚠️ 删除源中不存在的项 -**[了解更多 →](../core-concepts#prune-mode)** +**[了解更多 →](/zh/docs/core-concepts#prune-mode)** ## 配置层级 @@ -118,7 +118,7 @@ vsync sync --user # 同步全局配置 **用于**: 个人偏好、全局技能 -**[了解更多 →](../core-concepts#configuration-layers)** +**[了解更多 →](/zh/docs/core-concepts#configuration-layers)** ## 命令示例 @@ -206,7 +206,7 @@ vsync clean --user vsync clean skill/old-skill -y ``` -**[了解更多 →](../cli-commands#clean)** +**[了解更多 →](/zh/docs/cli-commands#clean)** ### import @@ -237,7 +237,7 @@ vsync import ../other-project --user } ``` -**[了解更多 →](../configuration)** +**[了解更多 →](/zh/docs/configuration)** ### 关键设置 @@ -261,7 +261,7 @@ vsync import ../other-project --user | OpenCode | `{env:VAR}` | `{env:API_KEY}` | | Codex | 无插值 | 直接值 | -**[了解更多 →](../configuration#mcp-configuration-differences)** +**[了解更多 →](/zh/docs/configuration#mcp-configuration-differences)** ### 配置文件位置 @@ -272,7 +272,7 @@ vsync import ../other-project --user | OpenCode | `opencode.json(c)` | `~/.opencode/opencode.json` | | Codex | `config.toml` | `~/.codex/config.toml` | -**[了解更多 →](../configuration#supported-tools)** +**[了解更多 →](/zh/docs/configuration#supported-tools)** ## 常用模式 @@ -297,7 +297,7 @@ vsync sync run: npx @nicepkg/vsync sync --yes ``` -**[了解更多 →](../advanced-features#cicd-integration)** +**[了解更多 →](/zh/docs/advanced-features#cicd-integration)** ### 迁移工作流 @@ -312,7 +312,7 @@ vsync plan vsync sync ``` -**[了解更多 →](../faq#migration-questions)** +**[了解更多 →](/zh/docs/faq#migration-questions)** ## 退出代码 @@ -360,14 +360,14 @@ mkdir -p ~/.cursor vsync init ``` -**[更多故障排除 →](../faq#troubleshooting)** +**[更多故障排除 →](/zh/docs/faq#troubleshooting)** ## 相关资源 -- **[快速开始](../getting-started)** - 详细安装指南 -- **[核心概念](../core-concepts)** - 理解 vsync -- **[CLI 命令](../cli-commands)** - 完整命令参考 -- **[配置指南](../configuration)** - 配置文件详情 -- **[高级功能](../advanced-features)** - Symlinks、性能 -- **[常见问题](../faq)** - 常见问题 -- **[贡献指南](../../contributing)** - 开发指南 +- **[快速开始](/zh/docs/getting-started)** - 详细安装指南 +- **[核心概念](/zh/docs/core-concepts)** - 理解 vsync +- **[CLI 命令](/zh/docs/cli-commands)** - 完整命令参考 +- **[配置指南](/zh/docs/configuration)** - 配置文件详情 +- **[高级功能](/zh/docs/advanced-features)** - Symlinks、性能 +- **[常见问题](/zh/docs/faq)** - 常见问题 +- **[贡献指南](/zh/contributing)** - 开发指南