Agent Skills: Webnovel Dashboard

启动可视化小说管理面板(只读 Web Dashboard),实时查看项目状态、实体图谱与章节内容。

UncategorizedID: lingfengqaq/webnovel-writer/webnovel-dashboard

Install this agent skill to your local

pnpm dlx add-skill https://github.com/lingfengQAQ/webnovel-writer/tree/HEAD/webnovel-writer/skills/webnovel-dashboard

Skill Files

Browse the full folder contents for webnovel-dashboard.

Download Skill

Loading file tree…

webnovel-writer/skills/webnovel-dashboard/SKILL.md

Skill Metadata

Name
webnovel-dashboard
Description
启动可视化小说管理面板(只读 Web Dashboard),实时查看项目状态、实体图谱与章节内容。

Webnovel Dashboard

目标

在本地启动一个 只读 Web 面板,用于可视化查看当前小说项目的:

  • 创作进度与 Strand 节奏分布
  • 设定词典(角色/地点/势力等实体)
  • 关系图谱
  • 章节与大纲内容浏览
  • 追读力分析数据

面板通过 watchdog 监听 .webnovel/ 目录变更并实时刷新,不对项目做任何修改。

执行步骤

Step 0:环境确认

export WORKSPACE_ROOT="${CLAUDE_PROJECT_DIR:-$PWD}"

if [ -z "${CLAUDE_PLUGIN_ROOT}" ] || [ ! -d "${CLAUDE_PLUGIN_ROOT}/dashboard" ]; then
  echo "ERROR: 未找到 dashboard 模块: ${CLAUDE_PLUGIN_ROOT}/dashboard" >&2
  exit 1
fi
export DASHBOARD_DIR="${CLAUDE_PLUGIN_ROOT}/dashboard"

Step 1:安装依赖(首次)

python -m pip install -r "${DASHBOARD_DIR}/requirements.txt" --quiet

Step 2:解析项目根目录并准备 Python 模块路径

export SCRIPTS_DIR="${CLAUDE_PLUGIN_ROOT}/scripts"
export PROJECT_ROOT="$(python "${SCRIPTS_DIR}/webnovel.py" --project-root "${WORKSPACE_ROOT}" where)"
echo "项目路径: ${PROJECT_ROOT}"

# 确保 `python -m dashboard.server` 可在任意工作目录下找到插件模块
if [ -n "${PYTHONPATH:-}" ]; then
  export PYTHONPATH="${CLAUDE_PLUGIN_ROOT}:${PYTHONPATH}"
else
  export PYTHONPATH="${CLAUDE_PLUGIN_ROOT}"
fi

# 前端 dist 已随插件发布;若缺失说明安装包异常
if [ ! -f "${DASHBOARD_DIR}/frontend/dist/index.html" ]; then
  echo "ERROR: 缺少前端构建产物 ${DASHBOARD_DIR}/frontend/dist/index.html" >&2
  echo "请重新安装插件或联系维护者修复发布包。" >&2
  exit 1
fi

Step 3:启动 Dashboard

python -m dashboard.server --project-root "${PROJECT_ROOT}"

启动后会自动打开浏览器访问 http://127.0.0.1:8765

如不需要自动打开浏览器,使用:

python -m dashboard.server --project-root "${PROJECT_ROOT}" --no-browser

注意事项

  • Dashboard 为纯只读面板,所有 API 仅 GET,不提供任何修改接口。
  • 文件读取严格限制在 PROJECT_ROOT 范围内,防止路径穿越。
  • 如需自定义端口,添加 --port 9000 参数。
Webnovel Dashboard Skill | Agent Skills