Loading...
正在加载...
请稍候

开源 obsidian-skills

✨步子哥 (steper) 2026年01月11日 02:20
<!DOCTYPE html> <html lang="zh-CN"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>obsidian-skills 海报</title> <style> <span class="mention-invalid">@import</span> url('https://fonts.googleapis.com/css2?family=Noto+Sans+SC:wght@300;400;500;700;900&display=swap'); :root { --primary-purple: #7f6d02; --deep-bg: #fe1b2b; --card-bg: #fa273a; --text-main: #0fffff; --text-sub: #f0c2d6; --accent-gold: #0fbf00; --code-bg: #f5131e; } body { margin: 0; padding: 20; font-family: 'Noto Sans SC', sans-serif; background-color: var(--deep-bg); color: var(--text-main); width: 1000px; height: 3000px; box-sizing: border-box; } .poster-container { display: grid; grid-template-rows: auto 1fr auto; height: 100%; padding: 80px; background: radial-gradient(circle at top right, rgba(127, 109, 242, 0.15) 0%, transparent 40%), radial-gradient(circle at bottom left, rgba(255, 191, 0, 0.05) 0%, transparent 40%), #1e1b2b; position: relative; } /* Decorative Background Elements */ .bg-grid { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-image: linear-gradient(rgba(255, 255, 255, 0.03) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, 0.03) 1px, transparent 1px); background-size: 50px 50px; z-index: 0; pointer-events: none; } .blur-circle { position: absolute; border-radius: 50%; filter: blur(100px); z-index: 0; } .circle-1 { width: 600px; height: 600px; background: rgba(127, 109, 242, 0.2); top: -100px; right: -100px; } .circle-2 { width: 500px; height: 500px; background: rgba(255, 191, 0, 0.1); bottom: 200px; left: -100px; } /* Header Section */ header { z-index: 10; text-align: center; margin-bottom: 50px; position: relative; } .header-badge { display: inline-block; background: rgba(127, 109, 242, 0.2); border: 2px solid var(--primary-purple); color: #a8a4e6; padding: 10px 30px; border-radius: 40px; font-size: 32px; font-weight: 700; margin-bottom: 20px; text-transform: uppercase; letter-spacing: 2px; } h1 { font-size: 110px; margin: 0; line-height: 1.1; background: linear-gradient(135deg, #ffffff 0%, #a8a4e6 100%); -webkit-background-clip: text; -webkit-text-fill-color: transparent; font-weight: 900; text-shadow: 0 10px 30px rgba(110,110,110,0.3); } .star-container { display: flex; justify-content: center; align-items: center; gap: 20px; margin-top: 30px; } .star-badge { background: linear-gradient(90deg, #ffbf00, #ff9500); color: #1e1b2b; padding: 12px 40px; border-radius: 50px; font-size: 42px; font-weight: 900; display: flex; align-items: center; gap: 10px; box-shadow: 0 10px 25px rgba(255, 191, 0, 0.4); transform: skew(-5deg); } .star-badge span { transform: skew(5deg); /* Counter skew text */ } /* Main Content Grid */ .main-content { z-index: 10; display: grid; grid-template-columns: 1.1fr 0.9fr; gap: 60px; height: 100%; } /* Left Column */ .left-col { display: flex; flex-direction: column; gap: 40px; } .intro-card { background: var(--card-bg); padding: 50px; border-radius: 30px; border: 1px solid rgba(255,255,255,0.05); box-shadow: 0 20px 40px rgba(0,0,0,0.2); } .intro-title { font-size: 36px; color: var(--primary-purple); font-weight: 700; margin-bottom: 20px; display: flex; align-items: center; gap: 15px; } .intro-title::before { content: ''; display: block; width: 8px; height: 36px; background: var(--accent-gold); border-radius: 4px; } .intro-text { font-size: 32px; line-height: 1.6; color: var(--text-sub); margin-bottom: 30px; } .intro-highlight { color: white; font-weight: 700; } .ceo-box { display: flex; align-items: center; background: rgba(0,0,0,0.2); padding: 20px; border-radius: 20px; border-left: 4px solid var(--primary-purple); } .ceo-avatar { width: 120px; height: 120px; border-radius: 50%; object-fit: cover; border: 4px solid rgba(127, 109, 242, 0.3); margin-right: 30px; } .ceo-info h3 { margin: 0; font-size: 36px; color: white; } .ceo-info p { margin: 5px 0 0; font-size: 24px; color: var(--text-sub); } /* Skills Section */ .skills-container { display: flex; flex-direction: column; gap: 25px; } .section-header { font-size: 48px; font-weight: 900; color: white; margin: 10px 0; display: flex; align-items: center; gap: 20px; } .skill-card { background: linear-gradient(145deg, #2e2b3e, #242233); padding: 35px; border-radius: 24px; border: 1px solid rgba(127, 109, 242, 0.1); position: relative; overflow: hidden; } .skill-card::after { content: ''; position: absolute; top: 0; right: 0; width: 150px; height: 150px; background: radial-gradient(circle at top right, rgba(127, 109, 242, 0.1), transparent 70%); } .skill-num { position: absolute; right: 30px; top: 30px; font-size: 60px; font-weight: 900; color: rgba(255, 255, 255, 0.03); line-height: 1; } .skill-header { display: flex; justify-content: space-between; align-items: flex-start; margin-bottom: 15px; } .skill-name { font-size: 34px; color: var(--primary-purple); font-weight: 700; } .skill-desc { font-size: 26px; color: #d1d3e6; line-height: 1.5; margin-bottom: 20px; } .skill-features { display: flex; flex-wrap: wrap; gap: 12px; } .feature-tag { background: rgba(127, 109, 242, 0.15); color: #b8b4ff; padding: 8px 18px; border-radius: 12px; font-size: 20px; font-weight: 500; } /* Right Column */ .right-col { display: flex; flex-direction: column; gap: 40px; } .visual-card { background: var(--card-bg); border-radius: 30px; overflow: hidden; box-shadow: 0 20px 50px rgba(0,0,0,0.3); border: 1px solid rgba(255,255,255,0.05); } .card-image { width: 100%; height: 420px; object-fit: cover; position: relative; } .card-overlay { position: absolute; bottom: 0; left: 0; width: 100%; height: 50%; background: linear-gradient(to top, rgba(30, 27, 43, 1), transparent); } .card-content { padding: 40px; } .card-title { font-size: 40px; color: white; margin-bottom: 20px; font-weight: 700; } .card-list { list-style: none; padding: 0; margin: 0; } .card-list li { font-size: 28px; color: var(--text-sub); margin-bottom: 15px; display: flex; align-items: flex-start; gap: 15px; } .card-list li::before { content: '✔'; color: var(--accent-gold); font-weight: bold; flex-shrink: 0; } /* Installation Box */ .install-box { background: var(--code-bg); border-radius: 20px; padding: 40px; border: 1px solid rgba(127, 109, 242, 0.3); font-family: 'Courier New', monospace; } .install-title { color: var(--primary-purple); font-size: 32px; font-weight: bold; margin-bottom: 25px; font-family: 'Noto Sans SC', sans-serif; } .install-step { color: #a5d6ff; font-size: 24px; line-height: 1.6; margin-bottom: 20px; } .install-url { color: var(--accent-gold); word-break: break-all; } .install-comment { color: #6a737d; font-style: italic; } /* Footer */ footer { z-index: 10; text-align: center; margin-top: 40px; } .github-btn { display: inline-flex; align-items: center; justify-content: center; background: white; color: var(--primary-purple); font-size: 36px; font-weight: 900; padding: 20px 60px; border-radius: 60px; text-decoration: none; transition: transform 0.2s; box-shadow: 0 15px 35px rgba(0,0,0,0.3); } .github-btn:hover { transform: translateY(-5px); } </style> </head> <body> <div class="bg-grid"></div> <div class="blur-circle circle-1"></div> <div class="blur-circle circle-2"></div> <div class="poster-container"> <!-- Header --> <header> <div class="header-badge">Obsidian CEO 亲自下场</div> <h1>开源 obsidian-skills</h1> <div class="star-container"> <div class="star-badge"><span>⭐ 4 天狂揽 4.6K Star</span></div> </div> </header> <!-- Main Content --> <div class="main-content"> <!-- Left Column: Skills --> <div class="left-col"> <div class="intro-card"> <div class="intro-title">项目简介</div> <p class="intro-text"> <span class="intro-highlight">Obsidian CEO Steph Ango</span> 亲自操刀,打通 <span class="intro-highlight">Claude Code</span> 与 <span class="intro-highlight">Obsidian</span> 笔记之间的任督二脉。 </p> <p class="intro-text"> 让 AI 真正理解 Obsidian 的“方言”,包括维基链接、Callout、Canvas 等,实现真正的笔记自动化。 </p> <div class="ceo-box"> <img src="https://sfile.chatglm.cn/image/13/139746f1.jpg" alt="Steph Ango" class="ceo-avatar"> <div class="ceo-info"> <h3>Steph Ango</h3> <p>Obsidian CEO (kepano)</p> </div> </div> </div> <div class="skills-container"> <div class="section-header">三大核心技能</div> <div class="skill-card"> <div class="skill-num">01</div> <div class="skill-header"> <div class="skill-name">obsidian-markdown</div> </div> <div class="skill-desc">写出真正 Obsidian 风格的增强型 Markdown,支持维基链接、嵌入文件、Callout 提示框和 Frontmatter。</div> <div class="skill-features"> <span class="feature-tag">维基链接 [[note]]</span> <span class="feature-tag">嵌入 ![[note]]</span> <span class="feature-tag">Callout 提示</span> <span class="feature-tag">YAML 属性</span> </div> </div> <div class="skill-card"> <div class="skill-num">02</div> <div class="skill-header"> <div class="skill-name">obsidian-bases</div> </div> <div class="skill-desc">专门服务 Obsidian 数据库功能,提供完整函数参考,确保公式合法可用,避免“看起来对,实际跑不起来”。</div> <div class="skill-features"> <span class="feature-tag">过滤器</span> <span class="feature-tag">公式汇总</span> <span class="feature-tag">函数调用</span> <span class="feature-tag">语法手册</span> </div> </div> <div class="skill-card"> <div class="skill-num">03</div> <div class="skill-header"> <div class="skill-name">json-canvas</div> </div> <div class="skill-desc">让 Claude 具备直接编写 Canvas 文件的能力。理解节点、边、分组以及颜色编码的 JSON 结构。</div> <div class="skill-features"> <span class="feature-tag">思维导图</span> <span class="feature-tag">节点连线</span> <span class="feature-tag">白板工具</span> <span class="feature-tag">可视化</span> </div> </div> </div> </div> <!-- Right Column: Usage & Visuals --> <div class="right-col"> <div class="visual-card"> <div style="position:relative;"> <img src="https://sfile.chatglm.cn/image/fe/fe9b7d1a.jpg" alt="Obsidian Canvas" class="card-image"> <div class="card-overlay"></div> </div> <div class="card-content"> <div class="card-title">让笔记库“活”过来</div> <ul class="card-list"> <li><strong>上下文注入:</strong>Claude 瞬间获得 Obsidian 官方文档知识。</li> <li><strong>避免幻觉:</strong>不再臆造不支持的 HTML 标签。</li> <li><strong>自动化:</strong>指挥 AI 批量重构你的笔记库。</li> </ul> </div> </div> <div class="visual-card"> <img src="https://sfile.chatglm.cn/image/79/79f5f99b.jpg" alt="Workflow" class="card-image" style="height: 300px; object-position: center;"> <div class="card-content"> <div class="card-title">Vibe Coding 理念延伸</div> <p style="font-size: 26px; color: var(--text-sub); margin:0;"> 这不是教 AI 怎么用 Obsidian,而是让 <span style="color:var(--primary-purple); font-weight:bold;">AI 成为 Obsidian 生态的一部分</span>。 </p> </div> </div> <div class="install-box"> <div class="install-title">⚡ 快速上手指南</div> <div class="install-step"> > 在 Claude Code 中输入:<br> <span class="install-url">安装这里的skills https://github.com/kepano/obsidian-skills</span> </div> <div class="install-step"> > 然后你可以尝试:<br> /json-canvas 画一个精美的思维导图,主题是:如何致富 </div> </div> </div> </div> <!-- Footer --> <footer> <a href="https://github.com/kepano/obsidian-skills" class="github-btn">GitHub: kepano/obsidian-skills</a> </footer> </div> </body> </html>

讨论回复

3 条回复
✨步子哥 (steper) #1
01-11 02:38
/ipfs/QmXQCyjJndGLReVGC9G7NAv2ADj8s88TXWneg61FqKDXRQ?filename=1.svg
✨步子哥 (steper) #2
01-11 02:41
# AI的隐秘咒语:Obsidian如何被一位CEO亲手唤醒 想象一下,你推开一扇尘封已久的图书馆大门,里面不是泛黄的纸页,而是一座由无数相互链接的笔记组成的活体迷宫。这就是Obsidian——无数知识工作者心中的“第二大脑”。2026年1月6日,这座迷宫突然亮起了新的光芒:Obsidian的CEO Steph Ango(网名kepano)在GitHub上开源了一个名叫**obsidian-skills**的项目。短短几天,这个仓库就冲上了4.8k星,增速之快,甚至让一些大厂的AI模型发布都相形见绌。它究竟藏着什么魔力?让我们一起走进这场知识管理与人工智能的浪漫邂逅。 🌟 **一场意外的爆火:4.8k星背后的社区心声** 故事要从一个普通的周一说起。kepano在X上发了一条推文:“I'm starting a set of Claude Skills for Obsidian...”,配图是几行简洁的代码。谁也没想到,这条推文像投进湖面的石子,激起层层涟漪。几天之内,仓库星标突破4800,评论区挤满了来自世界各地的Obsidian用户。他们不是在追逐炫酷的Demo,而是在为一个真正“懂自己工具”的AI欢呼。 > **Obsidian是什么?** > Obsidian是一款基于本地Markdown文件的笔记软件,它的最大特点是“双向链接”和“图谱视图”,让零散的笔记像神经元一样相互连接,形成一个可不断生长的知识网络。它没有云端订阅,完全离线,却拥有堪比Notion的扩展性,因此被无数研究者、作家、程序员奉为“第二大脑”。 为什么爆火?因为大多数AI在面对Obsidian时,就像一个只会说普通话的游客闯进了方言密布的古镇——它能看懂文字,却完全抓不住那些[[双向链接]]、> [!INFO] 呼出框、Canvas白板之间的微妙关系。kepano的obsidian-skills,相当于给AI递了一本“Obsidian方言速成手册”,让它终于能说一口地道的“Obsidian话”。 🔮 **技能的本质:让Claude学会Obsidian的“母语”** obsidian-skills并不是一个插件,而是一组“技能文件”(skills),专供Anthropic的Claude Code使用。Claude Code本身是一个终端AI代理,擅长读写文件、执行代码任务。但当它面对Obsidian的vault(笔记库)时,常常会把[[内部链接]]写成普通超链接,或者胡乱发明一些Obsidian根本不认识的语法。 kepano的解决方式简单而优雅:把Obsidian的官方文档、语法规则、常见模式,全部写成结构化的指令文件,塞进Claude的上下文。当Claude检测到你在操作Obsidian文件时,这些技能就会自动激活,就像手机切换到Wi-Fi时自动连接熟悉的网络。 > **Claude Code是什么?** > Claude Code是Anthropic推出的一款终端版AI代理(类似Cursor或Claude Desktop),可以直接读写本地文件、运行脚本、操作Git,甚至控制浏览器。它特别适合“Vibe Coding”——一种凭感觉、凭直觉驱动的编程方式,而非严密的工程流程。 🎭 **第一项技能:obsidian-markdown——让AI写出“原汁原味”的笔记** 第一项技能obsidian-markdown,堪称整套工具的基石。它教Claude正确处理Obsidian独有的Markdown扩展: - 双向链接:[[笔记名]] 和 [[笔记名#章节^块引用]] - 嵌入内容:![[图片.jpg]] 或 ![[另一篇笔记.md]] - 呼出框(callouts):> [!NOTE]、> [!WARNING]、> [!TIP] 等15种类型,还能自定义颜色和折叠 - Frontmatter YAML:用于存放tags、aliases、cssclass、created日期等元数据 想象一下,你让AI帮你整理一周的阅读笔记。过去,AI可能会给你一堆普通的Markdown标题和列表。现在,它会自然地插入[[来源文章]]链接,在关键段落加上> [!QUOTE] 呼出框,并在文件顶部生成整齐的YAML元数据。你打开Obsidian,一切完美契合,无需再手动调整。 🗃️ **第二项技能:obsidian-bases——数据库不再是AI的禁区** Obsidian的Bases(原Dataview升级版)是一个轻量级数据库功能,可以对笔记进行过滤、排序、公式计算、汇总统计。很多用户用它做项目管理、习惯追踪、文献库。 但Bases的公式语法极其严格,稍有差池就会报错。obsidian-bases技能内置了完整的函数参考手册(filter、map、reduce、date、link等),并教Claude如何写出合法的过滤器和汇总表达式。 举个例子:你告诉Claude“帮我建一个阅读清单数据库,只显示2026年读完的书,并按评分排序”。AI会直接生成一个.bases文件,包含正确的formula字段和summary设置。打开Obsidian,你立刻就能看到一张动态表格——完全不需要自己敲公式。 🖼️ **第三项技能:json-canvas——把想法直接画成思维导图** 这可能是最受欢迎的一项技能。Obsidian的Canvas是一个无限白板,可以放置笔记卡片、图片、连线、群组。底层是JSON格式。 json-canvas技能让Claude彻底掌握了Canvas的JSON结构:节点(node)的坐标、大小、颜色、类型(text/file/image);边(edge)的路径、标签、箭头;群组(group)的背景色和边框。 社区里最经典的例子莫过于:“/json-canvas draw a beautiful mindmap on how to get rich”。几秒钟后,一个结构清晰、颜色协调、节点自动排版的.canvas文件就躺在你的vault里了。打开Obsidian,思维导图已赫然在目。 有人甚至用它画系统架构图、故事板、人物关系图。配合社区的Excalidraw或Mermaid插件,视觉效果更是锦上添花。 📝 **上手其实很简单:三步走进AI笔记时代** 1. 在Claude的技能市场直接搜索“obsidian-skills”一键安装,或 2. 把kepano仓库里的文件手动复制到vault根目录的 /.claude 文件夹 3. 打开终端,对着你的vault路径,输入自然语言指令即可 不需要写复杂的prompt前缀,Claude会自动识别文件类型并加载对应技能。对新手来说,最友好的入门方式可能是先试几个社区流行的模板提示,比如“帮我总结最近10篇笔记的核心观点,并画成思维导图”。 🔥 **社区的狂欢:从模仿到超越** 项目发布后,社区迅速沸腾。@AxtonLiu开源了自己对Canvas、Excalidraw、Mermaid的可视化技能,并承诺推出视频教程对比官方实现与个人风格的差异。<span class="mention-invalid">@shao_</span>_meng分享了如何用Claude Code + obsidian-skills做项目管理、代码审查、每日复盘。@sychou直言“这彻底改变了我的Obsidian使用方式”。甚至有人用它重建CRM、做投资分析、汇总GitHub PR趋势。 下面这张表格,汇总了三项核心技能的实际应用场景与潜在限制(基于社区反馈整理): | 技能 | 关键能力 | 常见使用场景 | 潜在限制 | |--------------------|--------------------------------------------|------------------------------------------|--------------------------------------| | obsidian-markdown | 双向链接、嵌入、呼出框、Frontmatter YAML | 批量重构笔记、生成带标签的新笔记 | 复杂YAML仍需精确prompt | | obsidian-bases | 过滤器、公式、汇总、函数完整参考 | 项目看板、阅读清单、习惯追踪 | 公式仍建议手动验证 | | json-canvas | 节点、边、群组、颜色、布局 | 思维导图、系统架构图、故事板 | 视觉美观度高度依赖prompt细节 | 🌅 **写在最后的展望:AI与个人知识管理的未来** obsidian-skills不仅仅是一组技能文件,更是一种信号——当工具的创造者亲自为AI“翻译”自家产品的语言时,意味着AI正在从外来访客,变成生态里的原住民。kepano作为CEO直接下场开源,既体现了Obsidian一贯的社区优先哲学,也预示着未来可能有更多官方AI能力深度整合。 对我们普通用户来说,这或许是迄今最接近“AI第二大脑”的体验:它不喧哗、不烧钱,却能安静地帮你整理思路、连接知识、视觉化思考。当你下次打开Obsidian,看到AI刚刚为你画好的一张思维导图时,也许会会心一笑——原来,知识管理也可以这么浪漫。 ### 参考文献 1. GitHub - kepano/obsidian-skills: Claude Skills for Obsidian https://github.com/kepano/obsidian-skills 2. X Post by <span class="mention-invalid">@kepano</span>: I'm starting a set of Claude Skills for Obsidian https://x.com/kepano/status/2008578873903206895 3. Reddit r/ObsidianMD: Kepano released obsidian-skills repo - what custom skills are you building? https://www.reddit.com/r/ObsidianMD/comments/1q8gn9c/kepano_released_obsidianskills_repo_what_custom/ 4. X Post by <span class="mention-invalid">@AxtonLiu</span>: 开源了一套针对Canvas、Excalidraw、Mermaid的可视化skills https://x.com/AxtonLiu/status/2010143669668720825 5. The Verge: Obsidian's CEO on why productivity tools need community more than AI https://www.theverge.com/decoder-podcast-with-nilay-patel/760522/obsidian-ceo-steph-ango-kepano-productivity-software-notes-app
✨步子哥 (steper) #3
01-11 02:44
/ipfs/QmT4xZV4DB6dcejMhTHnRCenugr3rGtbn2boGMnSXvrUss?filename=2.svg