Skip to content

huasan2025/coding-mentor

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 

Repository files navigation

coding-mentor

一个帮助非程序员看懂 AI 生成代码的导师 Skill,并通过 Obsidian 双链接与标签系统,把每一次学习沉淀为可生长的知识库。


它解决什么问题

Vibe coding 时代,AI 可以帮你快速把功能做出来。但随之而来的问题是:

  • 代码能跑,但你不知道它在做什么
  • 想改一个地方,不知道从哪下手
  • 问过 AI 一次,下次还是得重新问
  • 知识碎片化,没有积累

coding-mentor 针对这个场景设计。它的第一目标不是帮你写更多代码,而是帮你真正看懂代码。


核心功能

1. 代码理解导师

粘贴任何代码片段、函数、配置文件,或者一个 GitHub 项目地址,导师会:

  • 先用一句话告诉你"这是什么"
  • 用第一性原理拆解背后的本质
  • 分析关键函数的职责和数据流向
  • 给出带注释的最小示例
  • 指出知识点在整体编程知识地图中的位置

2. 命令行 & 配置理解

粘贴终端命令、shell 脚本、配置文件,导师会:

  • 解释每个参数的意义
  • 说明背后的原理
  • 给出 macOS 环境下的典型用法

3. GitHub 项目拆解

输入一个 GitHub 仓库地址,导师会:

  • 判断项目规模(大/小),选择合适的切入深度
  • 大项目先拆整体框架,再逐步收敛到你感兴趣的部分
  • 指出最值得学习借鉴的 1-3 个模块

4. Obsidian 知识卡片系统 ⭐

这是 coding-mentor 最亮眼的设计。

每当你把一个概念真正理解透,导师会帮你生成一张符合 Obsidian 原生格式的知识卡片,包含:

  • YAML frontmatter(title、aliases、date、tags、related)
  • 正文双链接 [[wikilinks]],连接相关概念
  • 多层标签体系(类型 / 技术 / 场景 / 环境)

随着卡片积累,你的 Obsidian Graph View 会自然长出一张属于你自己的编程知识图谱

5. 复习提醒机制 🔔

当你再次问到已经建过卡片的概念,或粘贴的代码里出现了已建卡片对应的语法(如 defimport@dataclass),导师会主动提醒:

💡 你的知识库里已有这张卡片AI_Code_Base/concepts/概念卡:def 函数定义.md 建议先看看卡片,加深记忆,有疑问再展开。

防止重复学习、遗忘后反复问,知识真正留下来。


安装

将本仓库放置到 Claude Code 的 skills 目录:

git clone https://github.com/huasan2025/coding-mentor.git ~/.claude/skills/coding-mentor

使用方式

在 Claude Code 中,任何以下触发词均可启动导师模式:

看不懂这段代码
解释这个函数
这个命令是什么意思
这个配置干什么用
帮我理解...
拆解这个项目:<GitHub URL>
沉淀为知识卡片
/coding-mentor

示例对话

理解代码:

帮我理解这段代码 def load_app_config(project_root: Path) -> AppConfig:

拆解项目:

帮我查看一下 https://github.com/xxx/yyy 这个项目

生成卡片:

值得沉淀为知识卡片


知识卡片系统详解

卡片类型

类型 适用场景
concept 概念卡 抽象概念:API、Function、Data Flow
code-reading 代码阅读卡 具体函数 / 模块 / 项目局部实现
pattern 模式卡 可复用的实现方式,如"配置驱动"
pitfall 坑点卡 常见错误与排查思路

卡片格式示例

---
title: def 函数定义
aliases: [Python def, Function Definition]
type: concept
status: draft
date: 2026-03-14
tags:
  - concept
  - python
  - coding-mentor
related:
  - "[[概念卡:import 模块导入]]"   ← 与正文 ## 相关卡片 完全一致
---

# def 函数定义

## 一句话定义
...

## 相关卡片
- [[概念卡:import 模块导入]]      ← 只放真实存在的卡片

## 相关概念(待关联)
- Data Flow(数据流)              ← 卡片不存在时用纯文字,存在后同步升级

Obsidian 知识图谱的生长逻辑

coding-mentor 严格遵循真实链接原则

  • [[wikilinks]] 只指向已存在的卡片文件
  • 尚不存在的关联概念写在"相关概念(待关联)"下,以纯文字保留
  • 随着卡片积累,纯文字逐步升级为真实双链接
  • Obsidian 的反向链接会自动追踪"这个概念在多少张卡片里被引用过"

这样,Graph View 里的每一条连线都是真实的知识关联,不会出现指向空文件的断链。


推荐 Obsidian 配置

建议单独创建一个知识卡片项目文件夹

为了让知识图谱保持清晰独立,强烈建议在 Obsidian Vault 中创建一个专用文件夹存放所有由 coding-mentor 生成的卡片:

你的 Obsidian Vault/
└── AI_Code_Base/          ← 专用根目录
    ├── concepts/           ← 概念卡
    ├── patterns/           ← 模式卡
    ├── code-reading/       ← 代码阅读卡
    └── pitfalls/           ← 坑点卡

注意:AI 有权在 AI_Code_Base/ 下新建子文件夹,以保证结构清晰、连贯、统一。请在首次使用时告知导师你的 AI_Code_Base 根目录路径。

标签体系

卡片使用四层标签,便于在 Obsidian 中按维度筛选:

#concept / #code-reading / #pattern / #pitfall   ← 类型
#python / #git / #shell / #api / #network         ← 技术主题
#skill / #tooling / #website / #github-project    ← 使用场景
#macos / #windows                                 ← 运行环境

所有卡片固定带 #coding-mentor 标签,方便一键过滤本工具生成的所有内容。


设计原则

原则 说明
理解优先 第一目标是帮你看懂,不是帮你写更多代码
默认简洁 先给最精简的答案,用户驱动深度展开
第一性原理 所有概念尽量压缩到最底层本质
macOS 优先 命令和环境说明默认针对 macOS
真实链接 知识卡片只建立指向真实存在文件的双链接,frontmatter related 与正文同步
按需产卡 卡片是"理解收敛后"的沉淀,不是每次对话的默认输出
复习提醒 发现已有卡片时主动提醒,防止重复学习和遗忘

文件结构

coding-mentor/
├── SKILL.md                    # 主 prompt(~120 行)
└── references/
    └── card-templates.md       # 4 种卡片模板(按需加载)

License

MIT

About

An AI coding mentor for non-programmers to understand code, break down GitHub projects, and grow an Obsidian knowledge base.

Topics

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors