agentleFS
MUSE-CODE-SPACEMUSE-CODE-SPACE/vibe-coding-mcp/skills/vibe-coding/SKILL.md

vibe-coding

Skill1 starsChanged 21 days agoMITView on GitHub

Auto-documents AI coding sessions. Captures Claude Code transcripts into a local session store (prompts, files changed, code, commands, design decisions), then turns them into daily logs, standups, weekly reports, ADRs and PR descriptions, and publishes to Notion, Obsidian, GitHub Wiki, Confluence, Slack or Discord. Use when the user asks to "document this session", "what did I do today/this week", "write my standup / weekly report", "why did we choose X", "write a PR description for this refactor", "save this session", or to set up automatic session capture for Claude Code.

16 other projects use a version of this.

Adopted by

Most recently taken up by

The file

We split this skill into the rules it gives an agent

6 rules. 0 are common, 1 is distinctive, and 5 are very specific to this project.

  • 0

    Common

    Most of the 13 edited versions we read keep these.

  • 1

    Distinctive

    This author's own choices. Worth a look.

  • 5

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Very specific:

    Before producing any report, check that there is data.

    line 24
  2. Very specific:

    Run npx -y vibe-coding-mcp doctor and show the user the result.

    line 27
  3. Very specific:

    If hooks are not installed, run npx -y vibe-coding-mcp init (adds Stop + SessionEnd hooks to ~/.claude/settings.json, backs the file up …

    line 28
  4. Very specific:

    If the MCP server itself is missing, the user needs: claude mcp add vibe-coding-mcp -- npx -y vibe-coding-mcp.

    line 36
  5. Distinctive:

    Never invent work: Every line in a report must trace to a captured session (title, file, decision, or prompt).

    line 54
  6. Very specific:

    Decisions need a rationale: When designDecisions is empty for a session, run muse_summarize_design_decisions over the session's summary + …

    line 56

“Common” is measured: kept by at least 6 in 10 of the 13 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

vibe-coding — session memory for AI pair programming

You have the vibe-coding-mcp MCP server available (tools are prefixed muse_). It stores coding sessions as JSON files under ~/.vibe-coding-mcp/sessions/ and can read Claude Code's own transcripts from ~/.claude/projects/. Nothing leaves the machine unless the user publishes.

0. First: make sure capture is actually running

Before producing any report, check that there is data. Call muse_session_history with action: "stats". If totalSessions is 0, or the user asks for "setup":

  1. Run npx -y vibe-coding-mcp doctor and show the user the result.
  2. If hooks are not installed, run npx -y vibe-coding-mcp init (adds Stop + SessionEnd hooks to ~/.claude/settings.json, backs the file up first). Tell the user to restart Claude Code once.
  3. To backfill history that already exists on disk, call muse_capture_transcript with { "action": "capture", "all": true }. This parses every transcript for the current project and stores one session per Claude Code session (re-running is safe: it updates instead of duplicating).

If the MCP server itself is missing, the user needs: claude mcp add vibe-coding-mcp -- npx -y vibe-coding-mcp.

1. Pick the workflow from the user's words

User saysDo this
"save / capture this session", "remember what we did"muse_capture_transcript { action: "capture" } (newest transcript for cwd). Report title, files, decisions count.
"what did I do today", "daily log"muse_digest { period: "today", groupBy: "project", includePrompts: true } → tidy the Markdown. Or use the /daily-vibe-log prompt.
"standup"/standup prompt, or muse_digest for yesterday and today, then muse_git status. Output Yesterday / Today / Blockers, max 3 bullets each.
"weekly report", "what did I ship this week", "monthly retro"/weekly-report prompt, or muse_digest `{ period: "week""last-week""month", groupBy: "project", includePrompts: true }`. Rewrite into Shipped / Decisions / In progress / Next.
"why did we choose X", "what was the decision about Y"vibe-coding://search/<keyword> resource or muse_session_history { action: "search", keyword } → muse_session_history { action: "get", sessionId } → quote designDecisions and the matching prompts.
"document this session as README/DESIGN/API/ARCHITECTURE"/document-session prompt, or muse_session_history get → muse_generate_dev_document → (optional) muse_normalize_for_platform → muse_publish_document.
"write the PR description for this refactor"/refactor-context prompt: session → muse_summarize_design_decisions → muse_analyze_code (Mermaid) → muse_git diff. Sections: Why / What changed / Trade-offs / How to review.
"write an ADR for …"muse_summarize_design_decisions on the session's conversation, then muse_generate_dev_document DESIGN, then publish to Obsidian/Notion if asked.
"publish to Notion/Obsidian/Slack…"Read vibe-coding://config first. If the platform is not configured, say which env var is missing (see references/tools.md) instead of trying.

2. Rules that keep the output trustworthy

  • Never invent work. Every line in a report must trace to a captured session (title, file, decision, or prompt). If the digest is empty, say so and offer setup/backfill.
  • Keep file paths and identifiers in backticks, exactly as captured.
  • Decisions need a rationale. When designDecisions is empty for a session, run muse_summarize_design_decisions over the session's summary + prompts before writing "Decisions". If still nothing, write "no explicit decisions recorded".
  • Respect the session's language. Captured prompts in Korean → report in Korean unless asked otherwise (language: "ko" on muse_digest).
  • One capture per Claude session. muse_capture_transcript is idempotent; do not loop it.
  • Do not read transcripts yourself with Read/Bash when a tool exists; the parser handles truncation and privacy (sub-agent side-chains, system reminders).

3. Output shapes

Standup (plain text, no headings):

Yesterday
- Refactored auth middleware (`src/auth.ts`, `src/db.ts`); chose JWT over sessions for statelessness
Today
- Finish checkout bug (`src/checkout.tsx`), uncommitted changes pending
Blockers
- none

Weekly report: ## Shipped (per project, bullets with files) · ## Decisions (bullet: decision — rationale) · ## In progress / blocked · ## Next week.

PR description: ## Why · ## What changed (file-by-file) · ## Trade-offs · ## How to review (Mermaid diagram when muse_analyze_code produced one).

4. References

  • references/tools.md — every tool, resource, prompt with parameters and env vars.
  • references/workflows.md — step-by-step tool chains with example calls and expected output.
  • scripts/setup.sh — one-shot install: MCP registration + hooks + doctor.
  • assets/hooks.settings.json — the exact hooks block init installs, for manual setup.

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.