Skill flagged — suspicious patterns detected

ClawHub Security flagged this skill as suspicious. Review the scan results before using.

bullet-journal-gen

子弹笔记生成skill。将零散的自然语言输入转换为规范的子弹笔记格式, 包含任务、事件、笔记分类,自动润色语言,生成可视化卡片和打印版本。 工作学习相关内容自动合并到Obsidian日志,支持标签、双链和规范格式。 触发词:子弹笔记、记录今天、今天计划、写日记、每日记录、 整理笔记、生成日记、今天做了什么、明天计...

MIT-0 · Free to use, modify, and redistribute. No attribution required.
0 · 19 · 0 current installs · 0 all-time installs
MIT-0
Security Scan
VirusTotalVirusTotal
Benign
View report →
OpenClawOpenClaw
Suspicious
medium confidence
Purpose & Capability
Name/description (bullet-journal generator with Obsidian integration, HTML/PDF outputs) aligns with the included scripts (processing, generating cards/PDF, saving, task manager). However the SKILL description and some docs state '自动合并到Obsidian日志' / '自动同步' while the shipped scripts only generate markdown files under the skill's own data/ directory (manual import is described and automatic vault sync is listed as '待开发'). This is an overstatement in the user-facing description.
Instruction Scope
SKILL.md instructs running local Python scripts that parse input, produce formatted notes, templates, and save files under the skill directory. Interactive features involve starting a local HTTP server and calling endpoints (health, update_task_status, sync_to_printable) from client-side JS. The instructions do not request or hint at reading arbitrary system files or environment secrets, nor do they show network exfiltration to remote hosts, but they do create and update local files (data/, cards/, printable/, backups).
Install Mechanism
No install spec; the skill is instruction-only plus shipped scripts. Nothing is downloaded from external URLs or installed implicitly by the skill. This is low installation risk.
Credentials
The skill declares no required environment variables, no credentials, and the code does not reference external secrets in the provided files. The only external integration mentioned is a weather API but the repo contains a placeholder and the README instructs users to replace it with a real API — so no unexplained secret requests are present.
Persistence & Privilege
always is false and the skill does not request elevated privileges. It writes files within its own directory structure (data/, cards/, printable/, backup/) and does not modify other skills or system-wide agent settings in the visible code. The interactive server will persist state in tasks.json/data.json under the skill data directory.
What to consider before installing
What to check before installing or running this skill: - Understand where files are saved: by default the scripts write all outputs and backups into the skill's own directory (data/, cards/, printable/, data/backup). If you expect true Obsidian sync, know that the code generates markdown files but does not automatically push them into an Obsidian Vault unless you configure/sync the Vault path yourself (README states automatic sync is '待开发'). - Inspect get_weather.py and any network code: the repo mentions replacing a placeholder with a real weather API. If you enable a real weather API you'll need to provide credentials — review how/where you'd store API keys. The provided files do not require secrets by default. - Review any server code before running interactive mode: the interactive features require launching a local HTTP server (server.py). Confirm it binds only to localhost (127.0.0.1) and not 0.0.0.0 if you do not want remote access. Running the server will expose API endpoints that can modify local JSON files (tasks.json, data.json) — treat it like any local web service. - Audit templates and generated HTML if you open them in a browser: ensure they do not include external network requests (images, fonts, analytics) you don't expect. Opening untrusted HTML can trigger network requests from your browser. - Permissions and backups: the saver writes and copies files and creates backup files under data/backup. Check file ownership and disk usage if you run it in shared environments. - Run in a sandbox first: if you are unsure, run the scripts in an isolated environment (temporary directory or container) so you can inspect generated files and server behavior before integrating with your real Obsidian vault or persistent data. If you want a firmer 'benign' judgement, confirm (1) server.py binds to localhost only, (2) get_weather.py contains no hard-coded remote endpoints you don't trust, and (3) that you are comfortable with the skill writing files into its directory (or reconfigure paths to your vault manually).

Like a lobster shell, security has layers — review code before you run it.

Current versionv1.0.0
Download zip
latestvk97dsv1n663eces5zdnh6tjmmd830f0g

License

MIT-0
Free to use, modify, and redistribute. No attribution required.

SKILL.md

子弹笔记生成器(Bullet Journal Generator)

核心职能

接收零散的自然语言输入,输出:

  1. 规范化子弹笔记:使用标准符号系统(● ○ – > < ☆)分类内容
  2. 语言润色:将口语化表达转换为简洁规范的表达
  3. Obsidian集成:工作学习内容自动生成符合Obsidian规范的日志(标签、双链)
  4. 可视化卡片:生成带日期、天气、温度的展示卡片(HTML格式)
  5. 打印版本:生成适合打印的PDF格式笔记

工作流程(SOP)

Phase 0:输入接收与预处理

# 接收用户输入(零散的自然语言)
示例输入:
"""
09:00 今天要把有机逆合成的逻辑和思路整理出来最好自动化。去买卫生纸,预约羽毛球场地
09:17 老板突然紧急需要交给政府的立项书,我先把摘要写出来
明天家家悦有打折的鸡蛋
最近的股票市场波动比较大,要尝试新的分析方法了
"""

# 预处理步骤:
1. 时间戳识别与标准化(09:00, 09:17, 明天)
2. 内容分段(按时间或语义分隔)
3. 获取当前日期、天气、温度信息

Phase 1:语言润色与分类

# 调用语言处理脚本
python3 scripts/process_notes.py --input "用户输入" --date "2025-03-16"

# 处理逻辑:
1. 语言润色:
   - 去除口语化表达("要把" → "整理","突然" → 紧急标注)
   - 提炼核心信息
   - 补充必要主语

2. 内容分类(基于子弹笔记符号系统):
   - ● 任务(Task):待办事项
   - ○ 事件(Event):已发生或计划的活动
   - – 笔记(Note):想法、灵感、观察
   - > 迁移(Migration):推迟的任务
   - < 计划(Scheduled):未来安排
   - ☆ 优先(Priority):重要任务

3. 工作学习标记:
   - 自动识别工作/学习相关内容
   - 标记需要合并到Obsidian的内容

Phase 2:生成子弹笔记文本

# 生成标准化子弹笔记
python3 scripts/generate_bullet_journal.py \
  --date "2025-03-16" \
  --weather "晴" \
  --temperature "15°C" \
  --notes "[处理后内容列表]"

# 输出格式:
2025-03-16 (周一) | 晴 | 15°C

● 09:00 整理业务逻辑与思路,实现自动化
● 09:00 购买卫生纸
○ 09:17 紧急处理立项书摘要
< 明天 超市购买打折鸡蛋
– 最近股票市场波动较大,尝试新的分析方法
☆ 有机逆合成自动化整理(优先)

Phase 3:Obsidian日志集成

# 为工作学习相关内容生成Obsidian规范日志
python3 scripts/generate_obsidian_log.py \
  --notes "[工作学习内容]" \
  --date "2025-03-16"

# 输出规范:
---
date: 2025-03-16
tags: [工作/学习, 计划, 逆合成]
type: daily_log
---

# 2025-03-16 日志

## 任务

- [[业务/自动化整理]] 整理业务逻辑与思路,实现自动化 ⭐
- [[立项书/项目]] 紧急处理立项书摘要

## 思考与观察

[[股票分析/市场观察]] 最近股票市场波动较大,尝试新的分析方法

## 下一步行动

- [ ] 完成业务自动化
- [ ] 研究新股票分析方法
- [ ] 购买打折鸡蛋(超市)

---

# 双链说明
- [[业务/自动化整理]] → 链接到相关笔记
- [[立项书/项目]] → 项目相关文档
- [[股票分析/市场观察]] → 研究笔记

Phase 4:生成可视化卡片

# 生成HTML卡片(模拟手写风格)
python3 scripts/generate_card.py \
  --date "2025-03-16" \
  --weather "晴" \
  --temperature "15°C" \
  --notes "[子弹笔记内容]" \
  --output "cards/2025-03-16.html"

# 卡片特性:
1. 手写风格设计(类似纸质笔记)
2. 显示日期、天气图标、温度
3. 按符号系统分类显示
4. 支持响应式布局
5. 可直接在浏览器中查看

Phase 5:生成打印版本

# 生成PDF打印版本
python3 scripts/generate_pdf.py \
  --html "cards/2025-03-16.html" \
  --output "printable/2025-03-16.pdf"

# 打印版本特性:
1. A4纸张格式优化
2. 高分辨率打印
3. 留有书写空间(手写补充)
4. 保持手写风格
5. 可批量打印多日笔记

Phase 6:文件保存与管理

# 自动保存到对应目录
python3 scripts/save_notes.py \
  --date "2025-03-16" \
  --bullet_journal "[子弹笔记文本]" \
  --obsidian_log "[Obsidian日志]" \
  --card_path "cards/2025-03-16.html" \
  --pdf_path "printable/2025-03-16.pdf"

# 目录结构:
bullet-journal-gen/
├── data/
│   ├── 2025/
│   │   ├── 03/
│   │   │   ├── 16/
│   │   │   │   ├── bullet_journal.txt      # 纯文本子弹笔记
│   │   │   │   ├── obsidian_log.md          # Obsidian日志
│   │   │   │   ├── card.html                # 可视化卡片
│   │   │   │   └── printable.pdf            # 打印版本
│   │   │   └── ...
│   │   └── ...
│   └── ...
├── cards/                          # HTML卡片(快捷访问)
│   ├── 2025-03-16.html
│   └── ...
├── printable/                      # PDF打印版本
│   ├── 2025-03-16.pdf
│   └── ...
└── index.html                      # 索引页面(查看所有笔记)

符号系统说明

符号类型说明示例
任务待办事项● 整理有机逆合成逻辑
事件已发生或计划的活动○ 09:17 紧急处理立项书
笔记想法、灵感、关键信息– 股票市场波动较大
>迁移未完成推迟的任务> 购买卫生纸(推迟至明日)
<计划未来安排< 明天 家家悦购买鸡蛋
优先高优先级任务☆ 有机逆合成自动化整理

语言润色规则

口语化转换

  • "要把" → "整理/处理/完成"
  • "突然" → 紧急标注(☆或前缀)
  • "最好" → 目标补充
  • "想一想" → "思考/研究"
  • "看一下" → "查看/了解"

标准化格式

  • 时间格式:HH:MM 或 "明天"
  • 人名/地点:保持原名
  • 项目名称:使用简洁表述
  • 任务描述:动宾结构

Obsidian集成规范

文件命名

Daily Notes格式:YYYY-MM-DD.md
示例:2025-03-16.md

标签系统

tags: [工作/学习, 计划, 观察, 思考]
分类:
- 工作:项目相关、会议、文档
- 学习:研究、阅读、技能提升
- 计划:待办、日程、目标
- 观察:市场分析、数据观察
- 思考:想法、灵感、总结

双链规范

格式:[[笔记名称/子标题]] 或 [[笔记名称]]

示例:
- [[有机逆合成/自动化整理]]
- [[立项书/政府项目]]
- [[股票分析/市场观察]]
- [[技能提升/分析方法]]

内容组织

---
date: YYYY-MM-DD
tags: [...]
type: daily_log
---

# YYYY-MM-DD 日志

## 任务
- [[]] 任务1 ⭐(重要)
- [[]] 任务2

## 思考与观察
[[]] 思考内容

## 下一步行动
- [ ] 待办1
- [ ] 待办2

## 参考资料

天气集成

# 获取天气信息
python3 scripts/get_weather.py \
  --date "2025-03-16" \
  --location "烟台"

# 返回信息:
{
  "weather": "晴",
  "temperature": "15°C",
  "icon": "sunny"
}

# 天气图标映射
sunny → ☀️
cloudy → ☁️
rainy → 🌧️
snowy → ❄️
windy → 💨

使用示例

示例1:日常记录

用户输入:
"""
今天要完成周报,下午3点开会。晚上去健身房。
明天记得给客户打电话。
"""

处理结果:
● 完成周报
○ 15:00 团队会议
○ 晚间 健身房训练
< 明天 给客户打电话

示例2:工作学习内容

用户输入:
"""
最近股票波动大,要试试新方法。老板要项目摘要,我先写一下。
"""

Obsidian日志:
---
date: 2025-03-16
tags: [工作, 研究]
type: daily_log
---

## 任务
- [[立项书/项目摘要]] 准备项目摘要 ⭐

## 思考与观察
[[股票分析/市场波动]] 市场波动较大,研究新分析方法

工具脚本目录

文件功能
scripts/process_notes.py语言润色、内容分类、符号标记
scripts/generate_bullet_journal.py生成标准化子弹笔记文本
scripts/generate_obsidian_log.py生成Obsidian规范日志(标签+双链)
scripts/generate_card.py生成可视化HTML卡片
scripts/generate_pdf.py生成PDF打印版本
scripts/get_weather.py获取天气信息
scripts/save_notes.py文件保存与管理
templates/card_template.htmlHTML卡片模板
templates/print_template.html打印版本模板

输出格式总览

1. 子弹笔记文本(bullet_journal.txt)

2025-03-16 (周一) | ☀️ 晴 | 15°C

● 09:00 整理有机逆合成逻辑与思路
● 09:00 购买卫生纸
○ 09:17 紧急处理政府立项书摘要
< 明天 家家悦购买打折鸡蛋
– 最近股票市场波动较大,尝试新方法
☆ 有机逆合成自动化整理

2. Obsidian日志(obsidian_log.md)

---
date: 2025-03-16
tags: [工作, 学习]
type: daily_log
---

# 2025-03-16 日志

## 任务
- [[有机逆合成/自动化]] 整理有机逆合成逻辑 ⭐
- [[立项书/政府项目]] 处理立项书摘要

## 思考与观察
[[股票分析/市场波动]] 市场波动大,研究新方法

## 下一步
- [ ] 完成有机逆合成自动化
- [ ] 购买打折鸡蛋

3. 可视化卡片(card.html)

  • 手写风格设计
  • 显示日期、天气图标、温度
  • 分类展示任务、事件、笔记
  • 响应式布局

4. 打印版本(printable.pdf)

  • A4格式优化
  • 高分辨率
  • 留有手写空间
  • 保持手写风格

注意事项

  1. 语言润色平衡:保持原意的同时提高简洁性,不过度修改
  2. 符号准确性:根据内容性质正确选择符号
  3. 双链一致性:相同主题使用统一的双链格式
  4. 标签规范:使用预设标签系统,保持一致性
  5. 时间精度:保留用户提供的时间信息,必要时补充
  6. 隐私保护:敏感信息可标记为 :::hidden
  7. 备份策略:所有笔记自动备份到 data/backup/
  8. 版本控制:每日笔记自动添加时间戳,便于追溯

扩展功能

1. 周度/月度汇总

# 生成周度/月度报告
python3 scripts/generate_summary.py \
  --period "week" \
  --start "2025-03-10" \
  --end "2025-03-16"

2. 统计分析

# 任务完成率统计
python3 scripts/stats.py \
  --month "2025-03"

3. 搜索与检索

# 按标签/双链搜索
python3 scripts/search.py \
  --tag "工作" \
  --date-range "2025-03-01:2025-03-16"

用户自定义

自定义符号

用户可在 config/symbols.yaml 中修改符号映射:

task: "●"
event: "○"
note: "–"
migration: ">"
scheduled: "<"
priority: "☆"

自定义标签

config/tags.yaml 中定义标签分类:

work: [项目, 会议, 文档, 汇报]
study: [研究, 阅读, 技能, 课程]
life: [健康, 购物, 娱乐, 社交]

自定义模板

templates/ 目录下修改 HTML/CSS 模板,实现个性化设计。

Files

20 total
Select a file
Select a file to preview.

Comments

Loading comments…