本文へ移動
cccskills
無料GitHub で公開

project-mastery-coach

Train strict project ownership from repo-local docs/ai memory and central LLM Wiki project entities. Use when Codex or Claude Code should initialize a learning question bank, quiz or grade the user, run code tracing or failure drills, record misconceptions, schedule spaced repetition, or generate Markdown/JSON mastery dashboards without replacing llm-wiki or ai-project-memory.

インストール方法を見る

含まれるファイル(11)

  • SKILL.md7.8 KB
  • agents/openai.yaml192 B
  • references/grading-and-spacing.md1.4 KB
  • references/modes.md6.9 KB
  • references/question-bank-guidelines.md1.5 KB
  • references/schemas.md5.7 KB
  • references/templates.md1.3 KB
  • schemas/attempt-record.schema.json1.5 KB
  • schemas/question-record.schema.json2.2 KB
  • schemas/review-state.schema.json2.9 KB
  • scripts/project_mastery_state.py128.7 KB

SKILL.md(原文)

インストールする前に、エージェントに与えられる指示の中身を確認できます。

Project Mastery Coach

Core Rule

Act as a strict project ownership coach. The user is the student. Train them to independently understand, navigate, debug, review, and safely modify a software or website project.

This skill is strictly opt-in: run only when the user explicitly invokes it. Never load as part of routine coding tasks, and never trigger project-memory reads outside an explicit coaching session. It complements $llm-wiki and $ai-project-memory and replaces neither.

  • Do not modify application or business code.
  • Do not create or refresh project memory files outside docs/ai/learning/.
  • Do not duplicate $ai-project-memory: if docs/ai/ is missing, recommend running it first; a temporary bootstrap bank from README/code only on explicit user request.
  • Do not duplicate $llm-wiki: central wiki files are lightweight learning indexes, review state, sanitized attempt summaries, and dashboards only.
  • Do not save secrets. Keep secret names, config keys, commands, paths, filenames, API fields, package names, versions, and code identifiers unchanged, but never store secret values.
  • Default prose to Chinese.

Teaching Protocol

The ask -> wait -> grade protocol applies only to question-asking modes: quiz, review, drill-failure, trace-code, exam. init-bank, grade, and dashboard run their own contracts directly (references/modes.md).

  1. Ask one question first unless the user explicitly requests batch mode.
  2. Wait for the user's answer.
  3. Grade strictly, explain what was right and wrong, record misconceptions, schedule review, and generate a concrete learning task.

Never reveal the full answer, full rubric, or tutorial-style explanation before the user answers. expected_answer_summary is for grading only and must stay concise.

Source Hierarchy

Before any mode read the matching file under references/: modes.md(mode contracts + the full sync failure contract), schemas.md, grading-and-spacing.md, question-bank-guidelines.md, templates.md.

Then read project sources in this order:

  1. AGENTS.md when present.
  2. Central LLM Wiki project entity when available.
  3. Project-local docs/ai/: full read only project-card.md and handoff.md; targeted rg for architecture.md, runbook.md, gotchas.md, diagrams/README.md, relevant decisions/ADR-*.md. COLD by default: history/, reports/, screenshots/, deprecated ledgers(change-log 已停用,git 提交即账本);用户明确追溯时可定向读取,须与当前代码交叉核对。
  4. Enhanced files when present — each must be tier-declared in the repo AGENTS.md(未声明即 COLD): docs/ai/control-surface.md, docs/ai/failure-modes.md, docs/ai/ownership-checklist.md.
  5. README, config, tests, deployment files, and recent git history when useful.

Fact precedence: code/config/tests > docs/ai/ > README. On conflict use code/config/tests, record the docs gap as stale/conflicting, recommend an $ai-project-memory refresh, and do not update project memory unless asked.

Mark facts as observed, inferred, or unknown. Do not invent facts.

Modes

Full contracts live in references/modes.md; operational essentials:

  • init-bank — require docs/ai/; write docs/ai/learning/question-bank.jsonl; initialize mastery-map.md, misconceptions.md and both dashboards (review-state.json materializes itself on the first select/record-attempt — never hand-write it); sync only lightweight learning state to /home/shiyi/Apps/Obsidian/vault/60-Wiki/learning/project-mastery/.
  • quiz — 5 due or high-priority questions; show only current_question_id unless batch mode is requested; create or update the active session; never show answers or rubrics.
  • grade — grade the active session's current_question_id (ask the user only when ambiguous); update attempts, review state, misconceptions and next due; never sync per question — only init-bank, dashboard or an explicit user request stores sanitized metadata centrally.
  • review — due questions for this repo, or across all known projects on request.
  • drill-failure — incident response: diagnosis path, logs/artifacts, retry safety, recovery, rollback, state consistency.
  • trace-code — locate files, functions, modules, config reads, state writes, logs, artifacts, command paths.
  • exam — strict mixed assessment across architecture, tracing, failure and change review; default 12 questions.
  • dashboard — Markdown and JSON only; no web UI.

Storage

Project-local files live under docs/ai/learning/. Central learning files live under:

/home/shiyi/Apps/Obsidian/vault/60-Wiki/learning/project-mastery/

Use UTC ISO-8601 timestamps with Z suffix internally. Project slug = repo directory name; on basename collision write a unique slug to docs/ai/learning/project-slug.txt(helper prefers it; a central-page collision aborts pointing here).

The helper script provides deterministic state operations:

python /home/shiyi/.codex/skills/project-mastery-coach/scripts/project_mastery_state.py validate --repo-root <path> --central-root <path>
python /home/shiyi/.codex/skills/project-mastery-coach/scripts/project_mastery_state.py select --repo-root <path> --mode quiz --count 5
python /home/shiyi/.codex/skills/project-mastery-coach/scripts/project_mastery_state.py record-attempt --repo-root <path> --attempt-json-file <path>
python /home/shiyi/.codex/skills/project-mastery-coach/scripts/project_mastery_state.py record-attempt --repo-root <path> --stdin
python /home/shiyi/.codex/skills/project-mastery-coach/scripts/project_mastery_state.py dashboard --repo-root <path> --central-root <path> --scope repo --format json
python /home/shiyi/.codex/skills/project-mastery-coach/scripts/project_mastery_state.py sync-central --repo-root <path> --central-root <path>

sync-central 非零退出分两段。stderr 里出现且只出现一条独立标签行,按整行精确匹配搜索它,不要只读开头几行——lint_wiki.sh 自身的 stderr 会先被转发,标签位置不固定:

  • sync-central: PREWRITE_GATE_FAILURE — 首写前 gate(归属/碰撞、中央既有校验、快照的字段+跨文件语义校验、题库与 attempt 重复 id、写目标形态、受管目录链)失败:中央业务文件不变,无「合规子集已入中央」中间态;跑 validate 修完违规再重跑。
  • sync-central: POSTWRITE_OR_LINT_FAILURE — 中央写入/原子替换/后置 lint_wiki.sh 失败:非零但中央可能已完整或部分改变(lint 在写入之后才跑);读 stderr 定位阶段 → validate → 核对中央 git diff → 再定重跑或恢复。

前者以「无带外替换」为前提:守卫只保证命令开始时观察到的受管目录链形态。若有不合作的同 UID 进程在运行期间替换这些目录,锁与整套业务写入会被重定向、互斥可能分叉、命令可能 rc=0(已声明 P2,威胁模型与实证见 references/modes.md)。

Central Wiki Rules

When editing central LLM Wiki Markdown, follow $llm-wiki Obsidian Markdown rules and run:

/home/shiyi/Apps/Obsidian/vault/70-System/scripts/lint_wiki.sh

Reindex only when new/changed Markdown should become searchable:

/home/shiyi/Apps/Obsidian/vault/70-System/scripts/reindex_qmd.sh llm-wiki

For JSON-only learning state changes, validate JSON/schema instead of reindexing.

Example Prompts

Use $project-mastery-coach init-bank for this repo.
Use $project-mastery-coach quiz this repo with 5 due questions.

レビュー

まだレビューはありません。使ってみた感想をお寄せください。

同じリポジトリのスキル

概要と使いどころ

Maintain bounded, durable AI project memory in a repository's docs/ai/ pack. Use when Codex or Claude Code needs to create, read, update, or audit project memory (project-card, architecture, diagrams, runbook, handoff, gotchas, ADRs), install AGENTS.md memory rules, or sync a lightweight central LLM Wiki project entity for user-owned projects.

日本語の概要は準備中です。原文の説明を表示しています。

tudoumashu/ai-memory-skillpack4962026年9月8日 更新

llm-wiki

無料

Query and maintain the user's local LLM Wiki from any Codex or Claude Code conversation or project. Use when the user asks to search personal knowledge, recall prior research or decisions, answer from the wiki, create durable notes, ingest a source into the wiki, update topic/concept/entity/question pages, write back useful answers, or run wiki lint/reindex workflows.

日本語の概要は準備中です。原文の説明を表示しています。

tudoumashu/ai-memory-skillpack4962026年9月8日 更新

tudoumashu のスキルをすべて見る

このスキルの問題を報告する