AGENTS.md
本文件为后续在本仓库中工作的代码代理提供项目维护说明。
项目概览
本仓库使用 Jekyll 和 GitHub Pages 构建张峻旗的个人学术主页。
- 线上站点:https://junqi-zhang.ourjqxd.com/
- 主页正文:
_pages/about.md - 站点配置与作者信息:
_config.yml - 顶部导航配置:
_data/navigation.yml - 布局与公共片段:
_layouts/、_includes/ - Sass 样式:
_sass/ - 图片与媒体资源:
images/ - 导航跟随行为:
assets/js/mobile-nav-follow.js
本地开发
优先沿用仓库现有的 Ruby/Jekyll 工作流。
gem install bundler:2.2.19
bundle _2.2.19_ install
bash run_server.sh
本地服务启动后访问 http://127.0.0.1:4000/。
如只需做一次构建验证,运行:
bundle exec jekyll build
在当前工作环境中,如果已有本地 bundle 缓存,可以使用:
BUNDLE_PATH=/tmp/junqi-zhang-github-io-bundle bundle exec jekyll build
本地构建时可能出现 GitHub Metadata 缺少 API 认证的提示。除非当前改动依赖 GitHub 元数据,否则该提示通常不是阻塞问题。
编辑原则
- 改动范围应尽量贴合用户请求,避免顺手重构无关代码。
- 优先复用现有 Sass 分片、布局模板和 include,不要引入不必要的新样式体系或脚本框架。
- 不要直接编辑生成目录
_site/中的文件。 - 保持个人学术主页的表达风格:简洁、清晰、内容优先。
- 除非用户明确要求,不要做大规模视觉改版。
- 新增媒体资源前,先确认
images/中是否已有可复用素材。
桌面端与移动端体验
桌面端和移动端的访问体验必须保持一致,不能只优化一端而牺牲另一端。
- 修改导航、侧栏、头像、快速链接、正文布局或出版物列表时,都应同时检查桌面端和移动端。
- 优化移动端时,要保护桌面端的阅读宽度、侧栏结构和导航可读性。
- 优化桌面端时,要保护移动端的触控体验、横向导航提示和内容换行表现。
- 顶部粘性导航在不同视口下应暴露同一套栏目结构。
- 移动端导航可以横向滚动,但必须有明确的可滑动提示,并应在页面下滑时自动跟随当前栏目。
- 桌面端导航应显示与移动端一致的当前栏目状态,但不要干扰正文阅读布局。
- 头像相关调整必须保证移动端完整显示面部,同时维持桌面端的完整人像展示。
建议的视觉检查宽度:
- 移动端:约
390px - 桌面端:约
1280px
检查时应确认首页、顶部导航、作者信息、快速链接、正文段落和论文列表均清晰可读。
关键实现位置
_sass/_masthead.scss:控制顶部粘性区域和移动端导航滑动提示。_sass/_navigation.scss:控制顶部导航链接、当前栏目高亮和菜单样式。_sass/_sidebar.scss:控制作者头像、简介和快速链接。assets/js/mobile-nav-follow.js:根据页面滚动位置更新当前导航栏目。保持该脚本轻量、无依赖。_includes/scripts.html:加载独立站点脚本。
Git 与验证
- 编辑前后都检查
git status --short --branch。 - 不要回滚用户或他人已有的无关改动。
- 提交前运行
git diff --check。 - 涉及视觉或响应式体验的改动,应运行 Jekyll 构建,并在条件允许时用浏览器同时检查桌面端与移动端。