Agent skill

Jpage

by code2rich in code2rich/jpage

即页(jpage)统一技能:生成 HTML/Markdown 内容、制作 reveal.js 幻灯片、使用内容模板市场风格、上传到即页并管理文件。所有内容生产与文件管理操作都通过本技能完成。

MITAuto-check: notesDocuments & Office

Install Jpage

skills CLI
$ npx skills add code2rich/jpage --skill jpage -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install code2rich/jpage jpage --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/code2rich/jpage.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/jpage .claude/skills/jpage && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
jpage
GitHub stars
175
Token cost
~3.2k tokens
SKILL.md length
644 words
Files
10 (incl. assets)
Skills in repo
1
Repo updated
First seen
Licence
MIT

At a glance

即页(jpage)统一技能:生成 HTML/Markdown 内容、制作 reveal.js 幻灯片、使用内容模板市场风格、上传到即页并管理文件。所有内容生产与文件管理操作都通过本技能完成。

  • Works in 6 steps: 规划结构 → 选主题 → 生成多文件网站包 → …
  • Tasks that involve Markdown
  • SKILL.md covers 同步 Skill 到 Claude, 默认:单个自包含 HTML, 1. 规划结构 and 2. 选主题, plus 13 more sections
  • Runs JavaScript scripts from its folder; calls npm and curl; needs MCP_TOKEN and JPAGE_TOKEN

What it does

Jpage is an agent skill from code2rich/jpage. 即页(jpage)统一技能:生成 HTML/Markdown 内容、制作 reveal.js 幻灯片、使用内容模板市场风格、上传到即页并管理文件。所有内容生产与文件管理操作都通过本技能完成。

Its SKILL.md is about 3.2k tokens, which your agent loads only when the skill is triggered. The skill folder holds 14 other files, including assets (for example `assets/plugin/highlight/plugin.js`, `assets/plugin/notes/notes.js` and `assets/reveal.js`).

It sits in Documents & Office, covering Markdown. It works with Model Context Protocol and npm. The licence is MIT.

When your agent uses it

  • Tasks that involve Markdown

Example prompts

  • “/jpage”

Requirements

  • Python 3
  • Node.js
  • A credential in JPAGE_TOKEN

Workflow steps

6 steps, taken from the step headings in SKILL.md.

  1. 规划结构
  2. 选主题
  3. 生成多文件网站包
  4. 获取 reveal.js 资源
  5. 打包上传
  6. 返回并提示翻页

What it can do on your machine

Read from SKILL.md and the folder at commit 68e16e3. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Ships script files (JavaScript), which the agent can run.

    Shell commands in SKILL.md call:

    • npm
    • curl

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md. Its commands use npm and curl, which can reach the network depending on how they are called.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names these keys or tokens, usually read from environment variables:

    • MCP_TOKEN
    • JPAGE_TOKEN

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Jpage loads about 3.2k tokens when it runs. Until then it costs about 25 tokens; SKILL.md has 644 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~25
When it runs · the whole SKILL.md, loaded when a task matches
~3.2k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check: notes

The automated check noted patterns worth knowing about, such as sudo or a known installer.

  • NoteMentions a .env fileSKILL.md:44
    # 2. 当前目录 .env
  • NoteMentions a .env fileSKILL.md:45
    N=jp_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx' > .env
  • NoteMentions a .env fileSKILL.md:537
    > token 三选一:`.env` 里的 `MCP_TOKEN`、`.mcp.json` 里的 Bearer、用户给的 `jp_` 用户 token。

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from code2rich/jpage at commit 68e16e3, republished under its MIT licence (© code2rich). 644 words, ~3,216 tokens.

Download SKILL.mdSave it as .claude/skills/jpage/SKILL.md (or your agent's skills folder). This skill also uses 9 other files; get the full folder from GitHub.
name
jpage
description
即页(jpage)统一技能:生成 HTML/Markdown 内容、制作 reveal.js 幻灯片、使用内容模板市场风格、上传到即页并管理文件。所有内容生产与文件管理操作都通过本技能完成。
version
1.6.6
author
jpage

核心规则

当用户要求:

  • 生成 HTML 页面、Markdown 文档、报告、仪表板、简历、可视化等可预览内容
  • 制作 PPT / 幻灯片 / 演示文稿 / deck
  • 参照模板市场风格生成内容
  • 上传到即页、获取预览链接、管理已上传文件

统一走本技能的工作流。

内容生成后必须调用 upload_file 上传到即页,返回预览链接;不要只输出代码块让用户自己复制。 大段 base64 上传很慢且费 token,本地已有的大文件 / ZIP 优先用 CLI 或 curl multipart 上传。


安装 CLI

本 Skill 推荐配合 jpage CLI 使用。只要当前环境有 Node.js ≥ 20,就可以全局安装:

bash
npm install -g @code2rich/jpage

安装后验证:

bash
jpage --version

配置 Token(三选一即可):

bash
# 1. 环境变量
export JPAGE_TOKEN="jp_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"

# 2. 当前目录 .env
# echo 'JPAGE_TOKEN=jp_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx' > .env

# 3. 临时命令参数
jpage whoami --token jp_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

没有 npm / 无法安装 CLI / 没有 Bash 能力的纯 MCP 客户端,直接调用下方的 MCP 工具即可,无需安装。

同步 Skill 到 Claude

CLI 安装好后,把本 Skill 同步到 Claude Code / Desktop 的 skills 目录:

bash
# 自动安装到默认 skills 目录(按 ~/.claude/skills → ~/.claude-code/skills → ~/.agents/skills 顺序检测)
jpage skill install

# 或指定目录
jpage skill install --dir ~/.claude/skills/jpage

后续升级 jpage 后,用同一条命令覆盖更新:

bash
jpage skill update

该命令会把 npm 包内置的 skills/jpage/ 完整复制到目标目录,包括 SKILL.md 和 assets/ 资源。


入口优先级:CLI 优先,MCP 兜底

本 Skill 同时对应 jpage CLI(命令行) 与 MCP 工具 两套入口。执行上传、模板实例化、批量管理等任何操作时:

  1. 优先使用 jpage CLI。只要当前环境能调用 jpage 命令(或可通过 npm/pnpm 安装),就先走 CLI:二进制流式上传、base64 不进模型、速度最快、token 消耗最少。
  2. CLI 不可用时,再调用 MCP 工具。纯 MCP 客户端(无 Bash、无法执行命令、无法安装 CLI)才通过 upload_file、instantiate_content_template 等 tool 完成。

判断标准:能否在当前环境执行 jpage --version 并成功返回版本号?能 → CLI;不能 → MCP。


触发场景

  • 「上传到即页」「发到即页」「生成链接」
  • 生成 HTML 页面、网页、落地页、仪表板、报告、邮件模板
  • 生成 Markdown 笔记、文档、README
  • 创建简历、名片、个人主页、作品展示页
  • 生成数据可视化、图表页面、SVG 画布
  • 将代码片段转为可预览的 HTML 展示页
  • 生成 PPT / 幻灯片 / 演示文稿 / deck / 答辩 slides
  • 「参照模板生成…」「用模板风格生成…」「从模板市场找一个…」
  • 管理即页文件:列表、查看、修改、标签、分类、版本、删除、分享链接

内容生成规范

默认:单个自包含 HTML

除非用户要的是幻灯片 / PPT / 演示文稿(必须走 Bundle 模式),否则一律生成单个自包含 HTML 文件:

  • CSS 用 <style> 内联
  • JS 用 <script> 内联
  • 图片用 data URI 或在线 URL
  • 全部塞进一个 .html 里

不要把普通页面拆成 index.html + style.css + app.js 再打 ZIP——单文件在即页里预览最稳、分享最简单。

HTML 文件必须包含
html
<!DOCTYPE html>
<html lang="zh-CN">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>标题</title>
  <style>
    /* 内联 CSS */
  </style>
</head>
<body>
  <!-- 内容 -->
  <script>
    // 内联 JS
  </script>
</body>
</html>
  • 中文字体使用系统字体栈:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "PingFang SC", "Microsoft YaHei", sans-serif
  • 公共 CDN 库(如 Tailwind、Chart.js、D3、KaTeX 等)可用,但离线场景需谨慎
Markdown 文件

即页 Markdown 渲染引擎支持:

  • 代码高亮(highlight.js)
  • 数学公式:行内 $...$,块级 $$...$$(KaTeX)
  • Mermaid 图表:```mermaid
  • GFM 扩展:表格、任务列表、删除线、自动链接

幻灯片 / PPT 工作流(Bundle 模式)

reveal.js 引擎 ~85KB,单文件内联会让每个 PPT 膨胀。即页有 Bundle 机制(ZIP 解压成目录,资源共用),必须走这条路。

1. 规划结构

常见结构:

  • 简单式:封面 → N 张内容 → 总结
  • 章节式:封面 → 章节分隔页 → 内容页(可垂直堆叠)→ 下一章节分隔 → 内容 → 总结

结构语法:1 = 单张水平页,N = N 张垂直堆叠,d = 居中大字分隔页。 例:1,d,3,d,2,d,1 = 封面 / 分隔 / 3 页内容 / 分隔 / 2 页内容 / 分隔 / 总结。

2. 选主题

用户说主题主色
商务 / 汇报 / 正式 / 提案 / 季度 / 年终business深蓝 #0a4d8c + 白底
学术 / 论文 / 答辩 / 研究academic深灰 + 米白,衬线标题
创意 / 产品 / 发布 / 活泼 / 设计creative高饱和渐变
极简 / 简约 / keynote 风 / 苹果风minimal黑白 + 一个强调色

用户没指定时默认 business。

3. 生成多文件网站包

目录结构(推荐 flat,根级直接是 index.html + assets/):

deck/
├── index.html
├── assets/
│   ├── reveal.js          # reveal.js 引擎
│   ├── reveal-base.css    # 基础布局(必须)
│   ├── theme.css          # 选定的主题 CSS
│   └── plugin/
│       ├── highlight/
│       │   ├── plugin.js
│       │   └── monokai.css
│       └── notes/notes.js
index.html 关键要求
html
<!DOCTYPE html>
<html lang="zh-CN">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>幻灯片标题</title>
  <link rel="stylesheet" href="assets/reveal-base.css">
  <link rel="stylesheet" href="assets/theme.css">
  <link rel="stylesheet" href="assets/plugin/highlight/monokai.css">
</head>
<body>
  <div class="reveal">
    <div class="slides">
      <section><h1>标题</h1><p>副标题</p></section>
      <section>水平页</section>
      <section>
        <section>垂直堆叠页 1</section>
        <section>垂直堆叠页 2</section>
      </section>
    </div>
  </div>
  <script src="assets/reveal.js"></script>
  <script src="assets/plugin/highlight/plugin.js"></script>
  <script>
    Reveal.initialize({
      embedded: true,   // ★ iframe 内兼容,必须 true
      hash: true,
      controls: true,
      progress: true,
      slideNumber: true,
      transition: 'slide',
      plugins: [RevealHighlight]
    });
  </script>
</body>
</html>

关键约束:

  • Reveal.initialize 必须设 embedded: true,避免 iframe 父页面抢方向键。
  • 不要引用任何 CDN(jsdelivr/unpkg/cdnjs)。所有 reveal.js 资源必须打进 assets/。
  • 每页 <section> 内容精简;reveal.js 不自动滚动,溢出会被裁切。
  • 中文字体用系统栈。

4. 获取 reveal.js 资源

reveal.js 引擎 + 基础 CSS + 4 套主题 + notes/highlight 插件骨架已随本 Skill 包下发(assets/ 目录)。生成幻灯片时直接复制:

bash
SKILL=~/.claude/skills/jpage

mkdir -p deck/assets/plugin/notes deck/assets/plugin/highlight
cp "$SKILL/assets/reveal.js"              deck/assets/
cp "$SKILL/assets/reveal-base.css"        deck/assets/
cp "$SKILL/assets/themes/business.css"    deck/assets/theme.css   # 按需换主题
cp "$SKILL/assets/plugin/notes/notes.js"  deck/assets/plugin/notes/
cp "$SKILL/assets/plugin/highlight/plugin.js"  deck/assets/plugin/highlight/
cp "$SKILL/assets/plugin/highlight/monokai.css" deck/assets/plugin/highlight/

必须引入的两个 CSS:reveal-base.css(基础布局)+ theme.css(主题变量)。顺序:base 在前,theme 在后。

highlight.js 按需获取(可选)

本 Skill 默认不含 highlight.js 全量文件(940KB,太重)。若幻灯片需要代码高亮:

bash
npm pack highlight.js@11 && tar -xzf highlight.js-*.tgz --strip-components=1 -C deck/assets/plugin/highlight package/es/highlight.min.js package/styles/monokai.css

不需要代码高亮时,不要引入。

找不到本 Skill 包时

若运行环境没有本 Skill 的 assets/(如只贴了 SKILL.md),从 npm 拿稳定版:

bash
npm pack reveal.js@5
tar -xzf reveal.js-5.*.tgz --strip-components=1 -C deck/assets package/dist/reveal.js package/dist/reveal.css package/plugin/
mv deck/assets/reveal.css deck/assets/reveal-base.css
# 主题用本 SKILL.md 里 CSS 变量自定义,或手写 theme.css

5. 打包上传

有 Bash 能力时,优先用 CLI 或 curl multipart 上传 ZIP,二进制流式上传、不进模型 token 流:

bash
# 打 ZIP(flat 结构)
cd deck && zip -rq ../deck.zip index.html assets/ && cd ..

# 用 jpage CLI 上传(推荐)
jpage upload deck.zip --public

# 或 curl multipart
curl -sS -X POST "$BASE/api/files/upload" \
  -H "Authorization: Bearer $TOKEN" \
  -F "file=@deck.zip" \
  -F "isPublic=true"

纯 MCP 客户端(无 Bash)才退回 upload_file:

python
upload_file(
  name="ai-trends-deck.zip",
  content="<ZIP 的 base64>",
  isPublic=True
)

体积提示:reveal.js ~85KB 经 base64 约 113KB,作为 tool 参数流经模型 token 流,比 curl multipart 慢且费 token。有 Bash 就别走这条。

Show full SKILL.md (259 more words)Show less

6. 返回并提示翻页

上传成功后向用户展示 /s/<share_key> 链接,并提示:

幻灯片打开后,点击幻灯片区域聚焦,再用 ← → 翻页(或点右下角控件)。若键盘不响应,点预览页右上角「新窗口打开」按钮全屏查看。


内容模板市场工作流

当用户要求生成 HTML/Markdown 内容时,先判断是否需要风格参考。如果用户指定了风格或类型,先查询模板市场获取样例。

场景一:用户指定模板或风格

1. 调 list_content_templates 查询模板市场
   - 如果用户指定了分类类型(如「PPT」「书稿」),设置 category 参数
   - 如果用户指定了风格关键词,设置 keyword 参数
2. 向用户展示匹配的模板列表(标题、分类、描述)
3. 用户选择一个模板后,调 get_content_template(id=选择的模板id) 获取完整样例
4. 学习样例的以下特征:
   - 整体布局结构(header/main/footer/sidebar 等区域划分)
   - 色彩方案(主色、辅色、背景色、文字色)
   - 排版风格(字体大小、间距、对齐方式)
   - 交互元素(按钮样式、卡片样式、表格样式)
   - 使用的 CSS 技术(Grid/Flexbox/absolute 等)
   - 特殊效果(渐变、阴影、动画等)
5. 根据用户的具体内容需求,生成风格一致但内容全新的 HTML/Markdown
6. 调 upload_file 上传到即页,返回预览链接

场景二:自动推荐模板

1. 根据用户需求判断可能的分类类型
2. 调 list_content_templates(category=分类, sort="use_count", limit=3)
3. 如果有匹配模板,向用户推荐:
   「我找到了几个相关模板,是否参照某个模板的风格?还是直接生成?」
4. 用户选择后,按场景一的流程继续
5. 如果用户选择直接生成,则不使用模板,正常生成

场景三:上架文件到模板市场

用户有一个好看的 HTML/Markdown 文件,想上架到市场供以后参考。

1. 告知用户:上架后会快照文件当前内容,进入审核,管理员审核通过且设为展示后才出现在市场
2. 调 POST /api/content-templates/from-file
   - fileId: 源文件 ID(必填)
   - title: 模板名称(可选,默认用文件名)
   - categoryId: 分类 ID(必填,先用 GET /api/content-templates/categories 获取)
   - description: 风格描述(可选,建议包含:链接、风格关键词、适合内容、借鉴模块)
3. 一文件一模板:同文件再次上架会更新现有模板并重新进入审核
4. 告知用户已提交,等待审核

场景四:使用模板市场模板(直接实例化出文件)

当用户说「使用这个模板」「按这个模板生成一份」「把这个模板给我用」时,表示要在当前账户下创建一份基于模板内容的文件。该操作必须通过 Token 完成,Web 端按钮只能查看命令引导。

有 CLI 时优先走 CLI(速度最快、token 消耗最少):

bash
# 查看市场模板列表
jpage template ls --category html-book --limit 5

# 使用指定模板实例化(默认私有)
jpage template use 42 --name "我的报告.html" --public

CLI 不可用时,再调用 MCP 工具:

python
instantiate_content_template(
  id=42,
  originalName="我的报告.html",
  isPublic=True
)

注意:

  • instantiate_content_template 需要有效的 API Token(jp_...)或 MCP_TOKEN,Session Cookie 会被拒绝。
  • 实例化成功后会在用户账户下创建一个真实文件,返回 url 可直接分享。

分类与关键词对照

用户可能说的category 参数说明
PPT、演示、幻灯片、路演、商务演示html-ppt适合演示型 HTML
书稿、文档、教程、手册、协议规范、开发者文档html-book适合阅读型 HTML

旧 scene 参数(dashboard/report/resume/landing/note/presentation/card/email/other)仍可传入作为兼容,工具会自动映射到对应分类。建议改用 category 参数。

风格学习原则

AI 拿到样例后应学习的维度(按优先级):

  1. 布局结构 — 区域划分、内容组织方式
  2. 色彩方案 — 主色调、配色关系
  3. 字体排版 — 字号层级、行间距、字重
  4. 组件样式 — 卡片、按钮、表格、图表容器
  5. 视觉装饰 — 圆角、阴影、渐变、边框

重要:学习风格,不复制内容。生成的必须是全新的原创内容,仅保持视觉风格一致。


上传工作流

场景一:新建内容并上传

1. 根据用户需求生成完整的 HTML 或 Markdown 内容
2. 调用 upload_file:
   - name: 带扩展名的文件名(如 "data-report.html"、"meeting-notes.md")
   - content: 完整正文(UTF-8 字符串)
   - isPublic: 默认 true(除非用户明确要求私有)
3. 向用户展示返回的 url 链接

upload_file 返回结构:

json
{
  "id": 42,
  "original_name": "data-report.html",
  "file_type": "html",
  "size": 12345,
  "is_public": 1,
  "share_key": "abc12345",
  "url": "http://jpage.example.com/s/abc12345"
}

场景二:读取已有文件 → 修改 → 覆盖更新

1. 调 list_files 查看文件列表,找到目标文件 id
2. 调 get_file_content(id=目标id) 读取当前内容
3. 根据用户要求修改内容
4. 调 upload_file(name=原文件名, content=修改后内容, overwriteFileId=目标id)
5. 告知用户已更新

使用 overwriteFileId 会自动将旧版本存入版本历史,无需先删除再上传。

场景三:查看已上传文件

1. 调 list_files 返回文件列表
2. 向用户展示文件摘要(文件名、类型、大小、公开/私有)

文件组织与管理

标签与分类

# 查看现有标签/分类
调 list_tags → 展示所有标签及文件数
调 list_categories → 展示所有分类及文件数

# 上传时直接打标签
upload_file(name="Q3报告.html", content=..., tags=["报告", "Q3", "财务"])

# 给已有文件设置标签
add_tags_to_file(fileId=42, tags=["重要", "待审核"])

# 创建分类并归档文件
create_category(name="2026年报告") → 拿到 categoryId
set_file_category(fileId=42, categoryId=分类id)

版本历史

# 查看版本历史
list_file_versions(fileId=42)
→ 返回当前版本信息 + 所有历史版本列表

# 恢复到指定版本
restore_file_version(fileId=42, version=3)
→ 当前版本自动备份,版本3的内容成为新当前版本

分享链接

调 get_file_url(id=42)
→ 返回 { id: 42, url: "http://jpage.example.com/s/abc12345" }

短链接格式 /s/:key 是最佳分享方式,公开文件无需登录即可访问。

删除文件

调 delete_file(id=42)

必须先向用户确认再执行删除,此操作不可撤销。


⚡ 上传性能(大文件 / ZIP 必看)

upload_file 的 content 是字符串参数,ZIP 时是整包 base64。把大段 base64 当 tool 参数传会流经模型 token 流,极慢且昂贵。按内容来源选上传方式:

本地已有文件(尤其 ZIP 或 >1MB)→ CLI / curl multipart

有 Bash 时,直接走 REST multipart,二进制流式上传,base64 完全不进模型:

bash
# 推荐:jpage CLI
jpage upload ./site.zip --public
jpage upload ./report.html --public
jpage upload ./x.html --overwrite 42

# 或 curl multipart
curl -sS -X POST "$BASE/api/files/upload" \
  -H "Authorization: Bearer $TOKEN" \
  -F "file=@./site.zip" \
  -F "isPublic=true"

token 三选一:.env 里的 MCP_TOKEN、.mcp.json 里的 Bearer、用户给的 jp_ 用户 token。

模型现场生成的多文件站点 → Write 写盘 → zip → 上传

不要把每个资源 base64 塞进 upload_file。先用 Write 工具把文件写到磁盘、Bash 打包,再上传:

bash
zip -r site.zip index.html assets/
jpage upload site.zip --public

模型刚生成的 HTML/MD(含大文件)→ 直接 upload_file

内容本就在模型输出里,upload_file 让这些 token 只发一遍——返回值不含 content,不会回灌进上下文。

判断标准:内容是「此刻生成、已在上下文」还是「磁盘上已存在的文件」——前者用 upload_file,后者用 CLI / curl。


常见错误处理

错误信息原因处理方式
不支持的文件扩展名文件名后缀不在允许列表中确保文件名为 .html、.htm、.md 或 .markdown
文件过大内容超过 50MB拆分内容或压缩
文件不存在使用了无效的文件 ID重新 list_files 获取有效 ID
无权操作此文件非所有者且非 admin告知用户权限不足
上传后被当成多个独立文件(batch)而非一个幻灯片包ZIP 里没有 index.html,或有多个并列 HTML 且无共享资源目录确保根级有 index.html + assets/ 子目录
幻灯片打开是空白引用了 CDN 的 reveal.js所有资源必须本地 assets/,禁止 CDN URL
翻页键不响应iframe 父页面抢键已用 embedded:true 规避;提示用户先点击聚焦,或用新窗口打开
文字被裁切一页内容太多拆页,每页一个要点
主题样式没生效只引入了 theme.css 没引入 reveal-base.css,或顺序反了base 在前,theme 在后

MCP 工具

  • upload_file — 上传 HTML/Markdown/ZIP 文件
  • list_files — 列出文件
  • get_file_content — 读取文件内容
  • delete_file — 删除文件
  • rename_file — 改名 / 改公开性
  • get_file_url — 获取分享链接
  • star_file / unstar_file — 收藏
  • list_file_versions / restore_file_version — 版本历史
  • list_tags / add_tags_to_file — 标签
  • list_categories / create_category / set_file_category — 分类
  • list_content_templates — 查询内容模板市场
  • get_content_template — 获取模板完整内容(学习风格用)
  • instantiate_content_template — 用模板实例化文件(CLI 不可用时兜底)

© code2rich, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 9 other files (assets) in skills/jpage of code2rich/jpage.

  • SKILL.md
  • assets/plugin/highlight/monokai.css
  • assets/plugin/highlight/plugin.js
  • assets/plugin/notes/notes.js
  • assets/reveal-base.css
  • assets/reveal.js
  • assets/themes/academic.css
  • assets/themes/business.css
  • assets/themes/creative.css
  • assets/themes/minimal.css

Open the folder on GitHubat commit 68e16e3

Compare with similar skills

Jpage next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Jpage compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Jpage this skillcode2rich/jpage175—~3.2kAutomated safety check: NotesMIT
Slidev CLI Skilldskilld-dev/vue-ecosystem-skills181—~1.1kAutomated safety check: PassMIT
PullmdAeternaLabsHQ/pullmd486—~2.6kAutomated safety check: PassAGPL-3.0
MineruNebutra/MinerU-Skill122—~1.4kAutomated safety check: PassMIT
Rebuild Launcherspiculedata/saiku1.3k—~467Automated safety check: PassApache-2.0
Web Article Extractordongbeixiaohuo/writing-agent435—~740Automated safety check: PassMIT

Similar skills

  • Slidev CLI Skilld

    skilld-dev/vue-ecosystem-skills

    Build, present, and ship Slidev decks with @slidev/cli. An agent skill from skilld-dev/vue-ecosystem-skills.

    181 GitHub stars~1.1k tokensUpdated 15 days ago
    Documents & OfficeAuto-check passed
  • Pullmd

    AeternaLabsHQ/pullmd

    Read any web page, document, or YouTube video as clean Markdown using PullMD.

    486 GitHub stars~2.6k tokensUpdated 16 days ago
    Documents & OfficeAuto-check passed
  • Mineru

    Nebutra/MinerU-Skill

    An AI-Native skill for parsing PDF / Office / image files into clean Markdown with MinerU — a fast, zero-config document parser for AI agents.

    122 GitHub stars~1.4k tokensUpdated 13 days ago
    Documents & OfficeAuto-check passed
  • Rebuild Launcher

    spiculedata/saiku

    Rebuild and restart the Saiku launcher fat-JAR after changing saiku-ui or Java code, without shipping stale UI bundles or breaking the running JVM.

    1.3k GitHub stars~467 tokensUpdated today
    Documents & OfficeAuto-check passed
  • Web Article Extractor

    dongbeixiaohuo/writing-agent

    使用隔离的 Chrome DevTools MCP 从博客、新闻、公众号等网页提取正文,返回结构化内容,或保存 Markdown 和远程图片。用户要求提取文章、抓取网页正文、保存为 Markdown、下载文章图片或排查正文选择器时调用。

    435 GitHub stars~740 tokensUpdated 4 days ago
    Documents & OfficeAuto-check passed
  • Publish To Mdpage

    maypaz/md.page

    Turn any markdown into a shareable web page via md.page. An agent skill from maypaz/md.page.

    116 GitHub stars~610 tokensUpdated 28 days ago
    Documents & OfficeAuto-check: notes

Questions about Jpage

What does Jpage do?

即页(jpage)统一技能:生成 HTML/Markdown 内容、制作 reveal.js 幻灯片、使用内容模板市场风格、上传到即页并管理文件。所有内容生产与文件管理操作都通过本技能完成。. Jpage is an agent skill from code2rich/jpage.

When should I use Jpage?

Jpage fits situations like: tasks that involve Markdown.

How do I install Jpage in Claude Code?

Run `npx skills add code2rich/jpage --skill jpage -a claude-code`. Or copy the skill folder (skills/jpage in code2rich/jpage) into .claude/skills/jpage in your project. Claude Code loads it when a task matches its description.

How do I install Jpage in Codex?

Run `npx skills add code2rich/jpage --skill jpage -a codex`. Or copy the skill folder (skills/jpage in code2rich/jpage) into .agents/skills/jpage in your project. Codex loads it when a task matches its description.

Can I use Jpage in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add code2rich/jpage --skill jpage -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/jpage, .gemini/skills/jpage, .github/skills/jpage and .opencode/skills/jpage in your project.

What does Jpage need to run?

Going by SKILL.md and its folder, Jpage needs JavaScript for the scripts in its folder, the command-line tools its instructions call (npm and curl) and credentials named MCP_TOKEN and JPAGE_TOKEN. Our summary lists: Python 3; Node.js; A credential in JPAGE_TOKEN.

Does Jpage access the network?

SKILL.md contains no URLs. Its commands use npm and curl, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is Jpage safe to install?

Our automated static check of SKILL.md found notes only (mentions a .env file), nothing it rates as a warning. It is not a guarantee. Review the folder before installing.

What licence does Jpage use?

Jpage is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Jpage use?

About 3.2k tokens (SKILL.md is roughly 13k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Jpage?

Skills that share tags, products or a category with Jpage: Slidev CLI Skilld (skilld-dev/vue-ecosystem-skills, 181 stars), Pullmd (AeternaLabsHQ/pullmd, 486 stars), Mineru (Nebutra/MinerU-Skill, 122 stars) and Rebuild Launcher (spiculedata/saiku, 1.3k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Jpage?

code2rich (a GitHub user) maintains it in code2rich/jpage, which has 175 GitHub stars. The repository was last updated on July 30, 2026.

Source: code2rich/jpage on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.