Borrowing it
Nothing to install: this file belongs to gkaria/vibe-learn. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.
curl -O https://raw.githubusercontent.com/gkaria/vibe-learn/main/CLAUDE.mdgit clone --depth 1 https://github.com/gkaria/vibe-learnWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/instructions/gkaria/vibe-learn/claude-md)<a href="https://agentmods.dev/instructions/gkaria/vibe-learn/claude-md"><img src="https://agentmods.dev/badge/instructions/gkaria/vibe-learn/claude-md/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/instructions/gkaria/vibe-learn/claude-md"><img src="https://agentmods.dev/badge/instructions/gkaria/vibe-learn/claude-md.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.11927 | $0.11927 |
| Opus 5.5 | $0.04771 | $0.04771 |
| Sonnet 5.5 | $0.02385 | $0.02385 |
| Haiku 4.5 | $0.01193 | $0.01193 |
Grade B, and why
vibe-learn CLAUDE.md scanned grade B with 1 finding against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 6d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Reads agent configuration directoriesmediumAgent snooping
.claude/, .codex/, .gemini/ hold keys, settings and other credentials a mod has no legitimate need for.
install.sh ← hook registration into ~/.claude/settings.json How it starts
The opening of the file, as written. The whole thing — 350 lines — stays where its author put it; the contents beside it link to each section on GitHub.
CLAUDE.md
This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
What This Project Is
vibe-learn is a coding assistant plugin that observes what the AI does during a development session and helps users understand what was built. It works by registering lifecycle hooks that capture tool use events (file writes, edits, bash commands) into an append-only JSONL session log, then surfaces summaries at natural pause points.
Product principle: users can outsource thinking to an assistant, but they cannot outsource understanding. The project should make AI-assisted work easier to learn from, not just easier to accept.
It supports Claude Code, GitHub Copilot CLI, Codex App/CLI, OpenCode, Grok Build, and Cursor, with a generic adapter system for adding new assistants.
It requires no external API calls. Hooks are mechanical (bash + jq). The learning commands/prompts (/learn, /digest, /quiz, and the Copilot/Codex/Grok/Cursor skills) leverage the AI's own context window to generate explanations and reports.
Multi-Assistant Architecture
The project is split into a generic core and per-assistant adapters:
.claude-plugin/ ← Claude Code plugin packaging (the repo root is the plugin root)
plugin.json ← manifest; points commands/hooks at adapters/claude-code/
marketplace.json ← single-plugin marketplace so `/plugin marketplace add gkaria/vibe-learn` works
bin/ ← on the Bash tool PATH while the plugin is enabled
vibe-learn ← → scripts/cli.sh
vibe-learn-knowledge ← → scripts/knowledge.sh
scripts/ ← assistant-agnostic core (host payload translation stays in adapters)
bootstrap.sh ← SessionStart hook
capture-prompt.sh ← UserPromptSubmit hook
observe.sh ← PostToolUse hook (<50ms, append-only)
pause-summary.sh ← Stop hook
setup.sh ← global installer
install.sh ← per-project installer
cli.sh ← `vibe-learn` command dispatcher; `vibe-learn completion bash|zsh` is generated from its dispatch case labels and usage lines
doctor.sh ← `vibe-learn doctor`: read-only checks of jq, the install, each host's hooks, config keys, and the last session
briefing.sh ← `vibe-learn briefing`: static HTML session briefing + NotebookLM pack
audio-prep.sh ← `vibe-learn audio-prep`: finds the pack and walks through the NotebookLM upload
knowledge.sh ← knowledge ledger helper (record/touch/forget/list/due)
recap.sh ← `vibe-learn recap`: weekly "what I learned" markdown (read-only)
identity.sh ← sourced helper: harness, model, effort, version from payloads and host files
health.sh ← session log + meta → one assistant-health row per session segment (read-only)
usage.sh ← sourced helper: tool families and skills per session from the host's own session record
health-report.sh ← `vibe-learn health`: before/after-change comparison of health rows (read-only)
lib/session.jq ← shared jq module: learning turns (`learning_prompt`, `work_events`) and `session_facts` (goal, files, failures) for the pause summary and briefing
lib/briefing.jq ← `briefing_facts` (session_facts + timeline, ledger, diff, pause summary) and the page renderers that fill the templates
lib/pack.jq ← the NotebookLM pack, rendered from the same facts
lib/briefing-{session,index,health}.html ← briefing page templates (static HTML with `{{name}}` placeholders)
adapters/
claude-code/ ← Claude Code adapter
hooks.json ← hook registration template
commands/ ← /learn, /digest, /quiz, and /explain slash command files
install.sh ← hook registration into ~/.claude/settings.json
codex/ ← Codex App/CLI adapter
hooks.toml ← hook registration template (TOML)
prompts/ ← learn, digest, quiz, and explain prompt-file fallbacks
skills/ ← global Codex vibe-learn skill
install.sh ← hook registration into ~/.codex/config.toml
opencode/ ← OpenCode adapter
plugins/ ← local plugin for event capture
commands/ ← /learn, /digest, /quiz, and /explain markdown commands
install.sh ← plugin/command install into .opencode or ~/.config/opencode
grok/ ← Grok Build adapter
hooks.json ← hook registration template
commands/ ← /learn, /digest, /quiz, and /explain slash command files
skills/ ← /vibe-learn skill
install.sh ← hook file + skill/command install into ~/.grok or .grok
cursor/ ← Cursor adapter
hooks.json ← hook registration template (merged into hooks.json)
hooks/ ← vibe-learn.sh payload shim (Cursor envelope → core scripts)
skills/ ← learn, digest, quiz, explain (slash-style) and vibe-learn skills
install.sh ← shim + hooks.json merge + skill install into ~/.cursor or .cursor
copilot-cli/ ← GitHub Copilot CLI adapter
hooks.json ← native camelCase hook template
hooks/ ← vibe-learn.sh payload shim (Copilot envelope → core scripts)
skills/ ← learn, digest, quiz, explain, and vibe-learn skills
install.sh ← dedicated hook file + skill install into ~/.copilot or .github
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 6d ago Changed · +20 lines · +2,690 tokens per session a310976a1fdb
- 7d ago Changed · +46 tokens per session a816b116a5a9
- 21d ago Changed · +151 tokens per session e65c610bb6be
- 22d ago Changed · +43 tokens per session 00060bba1b40
- 28d ago Changed · +32 lines · +1,810 tokens per session 818642eb4878
- 1mo ago Changed · +13 lines · +939 tokens per session aec91a4bc5e7
- 1mo ago Changed · +29 lines · +1,711 tokens per session 8ecc997e3fd4
- 1mo ago First seen · 256 lines · 4,537 tokens per session scan B 44283bda06c7
vibe-learn CLAUDE.md is an instructions file published in the GitHub repository gkaria/vibe-learn (57 stars, last pushed 5d ago), licensed MIT. It adds 11,927 tokens to every session, about $0.0477 per session on Opus 5.5. A static security scan graded it B with 1 finding (reads agent configuration directories). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other instructions, from other repositories
vscode buildNext.instructions.md
Working notes and architecture documentation for the new esbuild-based build system in build/next. Use when making changes to the new build pipeline (transpile/bundle commands, NLS plugin, source-map handling, resource copying, or self-hosting watch tasks).
next.js AGENTS.md
AGENTS.md instructions for vercel/next.js, covering next.js development guide, codebase structure, monorepo overview, core package: packages/next and other important packages.
vscode oss-third-party-notices.instructions.md
Instructions for microsoft/vscode, covering vs code oss third-party-notices pipeline, architecture, pipeline flow in ci, cache eligibility and rollout and applying the notice (cutover).
langchain AGENTS.md
AGENTS.md instructions for langchain-ai/langchain, covering global development guidelines for the langchain monorepo, corridor security analysis, project architecture and context, monorepo structure and development tools & commands.
deepseek-harness AGENTS.md
AGENTS.md instructions for deepseek-ai/deepseek-harness, covering agents.md, pre-stable apis and released session data, repository layout, commands and host sandbox failures.
vscode copilot-instructions.md
Copilot instructions for microsoft/vscode, covering vs code copilot instructions, project overview, root folders, core architecture (src/ folder) and built-in extensions (extensions/ folder).