ClawSkills logoClawSkills

Bearblog

在 Bear Blog (bearblog.dev) 上创建和管理博客文章。支持扩展 Markdown、自定义属性和基于浏览器的发布。

介绍

{ "text": "# Bear Blog 技能\n\n在 [Bear Blog](https://bearblog.dev) 上创建、编辑和管理文章——这是一个极简、快速的博客平台。\n\n## 身份验证\n\nBear Blog 需要基于浏览器的身份验证。通过浏览器工具登录一次,Cookie 将会持久保存。\n\n``` browser action:navigate url:https://bearblog.dev/accounts/login/ ```\n\n## 创建文章\n\n### 步骤 1:导航到文章编辑器\n\n``` browser action:navigate url:https://bearblog.dev/<subdomain>/dashboard/posts/new/ ```\n\n### 步骤 2:填写编辑器\n\nBear Blog 使用 **纯文本头部格式**。\n\n编辑器字段包括:\n- `div#header_content` (contenteditable):属性(每行一个)\n- `textarea#body_content`:Markdown 正文\n\n**已验证:** 在这两个字段上使用 `fill`/`type`,然后点击 **发布**(Publish)或 **另存为草稿**(Save as draft)。无需 `evaluate`。\n\n**头部格式:**\n``` title: Your Post Title link: custom-slug published_date: 2026-01-05 14:00 tags: tag1, tag2, tag3 make_discoverable: true is_page: false class_name: custom-css-class meta_description: SEO description for the post meta_image: https://example.com/image.jpg lang: en canonical_url: https://original-source.com/post alias: alternative-url ```\n\n**正文格式:** 标准的 Markdown 及其扩展(见下文)。\n\n分隔符 `___`(三个下划线)在模板中用于将头部与正文分开。\n\n### 步骤 3:发布\n\n点击发布按钮,或使用 `publish: true` 提交表单。\n\n## 文章属性参考\n\n| 属性 | 描述 | 示例 |\n|-----------|-------------|---------|\n| `title` | 文章标题(必需) | `title: My Post` |\n| `link` | 自定义 URL 别名 | `link: my-custom-url` |\n| `published_date` | 发布日期/时间 | `published_date: 2026-01-05 14:30` |\n| `tags` | 逗号分隔的标签 | `tags: tech, ai, coding` |\n| `make_discoverable` | 在发现流中显示 | `make_discoverable: true` |\n| `is_page` | 静态页面或博客文章 | `is_page: false` |\n| `class_name` | 自定义 CSS 类(已 slug 化) | `class_name: featured` |\n| `meta_description` | SEO 元描述 | `meta_description: A post about...` |\n| `meta_image` | Open Graph 图片 URL | `meta_image: https://...` |\n| `lang` | 语言代码 | `lang: fr` |\n| `canonical_url` | SEO 规范 URL | `canonical_url: https://...` |\n| `alias` | 替代 URL 路径 | `alias: old-url` |\n\n## 扩展 Markdown\n\nBear Blog 使用带有插件的 [Mistune](https://github.com/lepture/mistune):\n\n### 文本格式\n- `~~strikethrough~~` → ~~strikethrough~~\n- `^superscript^` → 上标\n- `~subscript~` → 下标\n- `==highlighted==` → 高亮 (mark)\n- `**bold**` 和 `*italic*` —— 标准\n\n### 脚注\n```markdown Here's a sentence with a footnote.[^1]

[^1]: This is the footnote content. ```\n\n### 任务列表\n```markdown - [x] Completed task - [ ] Incomplete task ```\n\n### 表格\n```markdown | Header 1 | Header 2 | |----------|----------| | Cell 1 | Cell 2 | ```\n\n### 代码块\n````markdown ```python\ndef hello():\n print(\"Hello, world!\")\n``` ````\n\n通过 Pygments 进行语法高亮(在 ```). # Bear Blog Skill - Inline: `$E = mc^2{ "text": "# Bear Blog 技能\n\n在 [Bear Blog](https://bearblog.dev) 上创建、编辑和管理文章——这是一个极简、快速的博客平台。\n\n## 身份验证\n\nBear Blog 需要基于浏览器的身份验证。通过浏览器工具登录一次,Cookie 将会持久保存。\n\n``` browser action:navigate url:https://bearblog.dev/accounts/login/ ```\n\n## 创建文章\n\n### 步骤 1:导航到文章编辑器\n\n``` browser action:navigate url:https://bearblog.dev/<subdomain>/dashboard/posts/new/ ```\n\n### 步骤 2:填写编辑器\n\nBear Blog 使用 **纯文本头部格式**。\n\n编辑器字段包括:\n- `div#header_content` (contenteditable):属性(每行一个)\n- `textarea#body_content`:Markdown 正文\n\n**已验证:** 在这两个字段上使用 `fill`/`type`,然后点击 **发布**(Publish)或 **另存为草稿**(Save as draft)。无需 `evaluate`。\n\n**头部格式:**\n``` title: Your Post Title link: custom-slug published_date: 2026-01-05 14:00 tags: tag1, tag2, tag3 make_discoverable: true is_page: false class_name: custom-css-class meta_description: SEO description for the post meta_image: https://example.com/image.jpg lang: en canonical_url: https://original-source.com/post alias: alternative-url ```\n\n**正文格式:** 标准的 Markdown 及其扩展(见下文)。\n\n分隔符 `___`(三个下划线)在模板中用于将头部与正文分开。\n\n### 步骤 3:发布\n\n点击发布按钮,或使用 `publish: true` 提交表单。\n\n## 文章属性参考\n\n| 属性 | 描述 | 示例 |\n|-----------|-------------|---------|\n| `title` | 文章标题(必需) | `title: My Post` |\n| `link` | 自定义 URL 别名 | `link: my-custom-url` |\n| `published_date` | 发布日期/时间 | `published_date: 2026-01-05 14:30` |\n| `tags` | 逗号分隔的标签 | `tags: tech, ai, coding` |\n| `make_discoverable` | 在发现流中显示 | `make_discoverable: true` |\n| `is_page` | 静态页面或博客文章 | `is_page: false` |\n| `class_name` | 自定义 CSS 类(已 slug 化) | `class_name: featured` |\n| `meta_description` | SEO 元描述 | `meta_description: A post about...` |\n| `meta_image` | Open Graph 图片 URL | `meta_image: https://...` |\n| `lang` | 语言代码 | `lang: fr` |\n| `canonical_url` | SEO 规范 URL | `canonical_url: https://...` |\n| `alias` | 替代 URL 路径 | `alias: old-url` |\n\n## 扩展 Markdown\n\nBear Blog 使用带有插件的 [Mistune](https://github.com/lepture/mistune):\n\n### 文本格式\n- `~~strikethrough~~` → ~~strikethrough~~\n- `^superscript^` → 上标\n- `~subscript~` → 下标\n- `==highlighted==` → 高亮 (mark)\n- `**bold**` 和 `*italic*` —— 标准\n\n### 脚注\n```markdown Here's a sentence with a footnote.[^1]

[^1]: This is the footnote content. ```\n\n### 任务列表\n```markdown - [x] Completed task - [ ] Incomplete task ```\n\n### 表格\n```markdown | Header 1 | Header 2 | |----------|----------| | Cell 1 | Cell 2 | ```\n\n### 代码块\n````markdown ```python\ndef hello():\n print(\"Hello, world!\")\n``` ````\n\n通过 Pygments 进行语法高亮(在 - Block: `$\int_0^\infty e^{-x^2} dx$`

### Abbreviations ``` 后指定语言)\n\n### 定义列表\n\n```

### Admonitions ```markdown\n*[HTML]: Hypertext Markup Language\nThe HTML specification is maintained by the W3C.\n```

### Table of Contents ```markdown\n.. note::\n This is a note admonition.\n\n.. warning::\n This is a warning.\n```

## Dynamic Variables

Use `{{ variable }}` in your content:

### Blog Variables - `{{ blog_title }}` — Blog title - `{{ blog_description }}` — Blog meta description - `{{ blog_created_date }}` — Blog creation date - `{{ blog_last_modified }}` — Time since last modification - `{{ blog_last_posted }}` — Time since last post - `{{ blog_link }}` — Full blog URL - `{{ tags }}` — Rendered tag list with links

### Post Variables (in post templates) - `{{ post_title }}` — Current post title - `{{ post_description }}` — Post meta description - `{{ post_published_date }}` — Publication date - `{{ post_last_modified }}` — Time since modification - `{{ post_link }}` — Full post URL - `{{ next_post }}` — Link to next post - `{{ previous_post }}` — Link to previous post

### Post Listing ```markdown\n.. toc::\n```

Parameters: - `tag:` — filter by tag(s), comma-separated - `limit:` — max number of posts - `order:` — `asc` or `desc` (default: desc) - `description:True` — show meta descriptions - `image:True` — show meta images - `content:True` — show full content (only on pages)

### Email Signup (upgraded blogs only) ```markdown\n{{ posts }}\n{{ posts limit:5 }}\n{{ posts tag:\"tech\" }}\n{{ posts tag:\"tech,ai\" limit:10 order:asc }}\n{{ posts description:True image:True content:True }}\n```

## Links

### Standard Links ```markdown\n{{ email-signup }}\n{{ email_signup }}\n```

### Open in New Tab Prefix URL with `tab:`: ```markdown\n[Link text](https://example.com)\n[Link with title](https://example.com \"Title text\")\n```

### Heading Anchors Headings automatically get slugified IDs: ```markdown\n[External link](tab:https://example.com)\n``` Links to: `#my-section-title`

## Typography

Automatic replacements: - `(c)` → © - `(C)` → © - `(r)` → ® - `(R)` → ® - `(tm)` → ™ - `(TM)` → ™ - `(p)` → ℗ - `(P)` → ℗ - `+-` → ±

## Raw HTML

HTML is supported directly in Markdown:

```markdown\n## My Section Title\n```

**Note:** `<script>`, `<object>`, `<embed>`, `<form>` are stripped for free accounts. Iframes are whitelisted (YouTube, Vimeo, Spotify, etc.).

## Whitelisted Iframe Sources

- youtube.com, youtube-nocookie.com - vimeo.com - soundcloud.com - spotify.com - codepen.io - google.com (docs, drive, maps) - bandcamp.com - apple.com (music embeds) - archive.org - And more...

## Dashboard URLs

Replace `<subdomain>` with your blog subdomain:

- **Blog list:** `https://bearblog.dev/dashboard/` - **Dashboard:** `https://bearblog.dev/<subdomain>/dashboard/` - **Posts list:** `https://bearblog.dev/<subdomain>/dashboard/posts/` - **New post:** `https://bearblog.dev/<subdomain>/dashboard/posts/new/` - **Edit post:** `https://bearblog.dev/<subdomain>/dashboard/posts/<uid>/` - **Styles:** `https://bearblog.dev/<subdomain>/dashboard/styles/` - **Navigation:** `https://bearblog.dev/<subdomain>/dashboard/nav/` - **Analytics:** `https://bearblog.dev/<subdomain>/dashboard/analytics/` - **Settings:** `https://bearblog.dev/<subdomain>/dashboard/settings/`

## Example: Complete Post

**Header content:** ```html\n<div class=\"custom-class\" style=\"text-align: center;\">\n <p>Centered content with custom styling</p>\n</div>\n```

**Body content:** ```\ntitle: Getting Started with AI Assistants\nlink: ai-assistants-intro\npublished_date: 2026-01-05 15:00\nmeta_description: A beginner's guide to working with AI assistants\ntags: ai, tutorial, tech\nis_page: false\nlang: en\n__CODE_BLOCK_19__markdown\nAI assistants are changing how we work. Here's what you need to know.\n\n## Why AI Assistants?\n\nThey help with:\n- [x] Writing and editing\n- [x] Research and analysis\n- [ ] Making coffee (not yet!)\n\n> \"The best tool is the one you actually use.\" — Someone wise\n\n## Getting Started\n\nCheck out [OpenAI](tab:https://openai.com) or [Anthropic](tab:https://anthropic.com) for popular options.\n\n---\n\n*What's your experience with AI? Let me know!*\n\n{{ previous_post }} {{ next_post }}\n

更多产品