跳到主要内容
系列文档 · 第 213 min

第 2 集 - 创建并验证 CLI 工作区

正文

这一集创建一个本地 Silan Viking 工作区,并验证 CLI 能读取、校验和索引内容源。这个流程不要求你已经克隆 Silan Viking 源码仓库,也不要求安装桌面端开发环境。

执行 silan init、content lint、index sync 和 guide 后的干净 CLI 工作区。

前置条件

请使用 macOS 或 Linux shell,并确认:

  • 可以联网下载安装程序;
  • 可以写入 ~/.local/bin
  • gitPATH 中可用;
  • 安装后可以重新打开一个终端会话。

安装程序会提供三个等价命令:silansvksilan-viking。本文示例使用 silan

一、安装命令

| curl -fsSL https://raw.githubusercontent.com/Qingbolan/Silan-Personal-Website/main/engine/install.sh | sh |
silan --version

安装脚本会根据当前平台选择发布版二进制,并写入 ~/.local/bin。如果安装后找不到 silan,请打开一个新终端,让更新后的 PATH 生效。

安全提示:如果不希望把远程脚本直接交给 shell 执行,请先在仓库中打开 engine/install.sh 检查内容,再在本地运行同一个脚本。

二、创建工作区

mkdir my-research-site
cd my-research-site
silan init

silan init 会创建:

  • content/,规范内容源;
  • content/SCHEMA.md,本地 schema 说明;
  • silan-viking.toml,工作区配置;
  • 示例 resume、blog 和 project 内容;
  • 用于内容源的 Git 仓库。

你的写作内容保存在普通文件中。SQLite 数据库是从这些文件派生出来的,可以重新生成。

三、验证工作区

silan content lint
silan index sync
silan guide

三个命令责任不同:

  • content lint 检查内容树中的 schema 和引用问题;
  • index synccontent/ 重建派生数据库;
  • guide 读取当前项目状态,并打印下一项有用动作。

新工作区可能出现非致命提示,例如缺少翻译或简历缺少邮箱。只要汇总以 0 fatal 结束,这个工作区就可以继续使用。

预期结果

本集结束后,工作区应该已经初始化并完成同步。你应该能运行:

silan config
silan content tree
silan guide

如果任何命令失败,请先修复工作区,再创建内容。只有在 silan index sync 成功后,才进入第 3 集。

四、用桌面端管理内容

桌面端应用叫 Silan Context System。当你在完整 Silan Viking 源码仓库中工作,并希望用一个本地工作台来审阅、编辑、查看发布状态、流量证据和 Git 变更时,使用它。

桌面工作台界面的浏览器 smoke test;受支持的管理模式是由 CLI 启动的 Tauri shell。

受支持的启动路径是 CLI,而不是直接打开 Vite URL:

cd /path/to/Silan-Personal-Website
silan desktop

这个命令会先刷新本地 SQLite 投影,然后用三个注入路径启动 Tauri 桌面会话:

  • SILAN_DESKTOP_CONTENT,规范 content/ 内容树;
  • SILAN_DESKTOP_DB,派生的 _deploy/api/portfolio.db 读模型;
  • SILAN_VIKING_BIN,执行发布动作时使用的同一个已审阅 CLI 二进制。

桌面端适合处理这些具体管理任务:

  • 打开 dashboard,检查本地流量、crawler 和 delivery 状态;
  • 在同一个工作台中审阅 Blog、Projects、Moments、Resume 和 Episodes;
  • 编辑 Markdown-backed 正文,并通过 Rust engine 保存;
  • 外部文件编辑后刷新工作区;
  • 提交或部署前检查 Git 变更。

不要把桌面端当作新建外部工作区的安装器。silan init 创建的是内容工作区;它不会复制 desktop/、安装 Tauri 依赖,也不会打包原生应用。对于一个新建外部工作区,继续使用 CLI,并用任意编辑器修改 Markdown 文件。以后可以再引入桌面端,而不需要改变内容模型。

启动前建议先检查:

test -f desktop/package.json
lsof -nP -iTCP:5184 -sTCP:LISTEN 
true
silan index sync
silan desktop

当前桌面端 dev server 使用 5184 端口。启动脚本会复用同一个项目中已经运行的 Silan Context System Vite 服务。如果是其他进程占用了这个端口,请先停止它,或换一个干净会话重试。直接打开 http://127.0.0.1:5184 只适合做浏览器 smoke test:那里没有 Tauri IPC,所以即使界面能渲染,调用 invoke 的管理动作仍可能失败。

0 次点赞
Silan Hu2 次阅读分享:
访客身份
G

还没有评论