Lean toolkit for disciplined engineering workflows with Claude Code.
Website · Documentation · Changelog · Report Bug
- Supports test-driven development (TDD) — opt-in via
--add-testsflag ortdd: truein config - Provides systematic debugging methodology
- Quick bug fix workflow (
/cf-fix) - Structured optimization with before/after measurement (
/cf-optimize) - Quick Q&A about codebase with memory (
/cf-ask) - Ensures verification before claiming done
- Smart conventional commits and code review
- ✨ Cross-agent code review (
/cf-review-out+/cf-review-in) — generate a review prompt for any AI agent (Gemini, Codex, ChatGPT, or human), collect results when ready - Captures project knowledge across sessions (
/cf-remember) - ✨ Persistent AI memory with 3-tier hybrid search (
cf memory) — stores facts, preferences, debug episodes across sessions with automatic recall - ✨ Helps humans learn from vibe coding sessions (
/cf-learnfor concise notes,/cf-teachfor deep conversational breakdowns) — browse as a searchable website (cf host) or share with other LLM clients via MCP server (cf mcp) - In-depth research with web search and parallel subagents (
/cf-research) - Custom skill guides — extend built-in skills with your own Before/Rules/After per skill
- ✨ Save and load Claude Code session chats across machines and accounts (
/cf-session) - ✨ Smart auto-approve — 3-step hook (rules → working-dir check → Sonnet LLM classifier) auto-approves read-only tools and working-dir file edits, blocks destructive commands, and uses an LLM classifier for everything else. When blocked, Claude gets the reason and tries alternatives. Available to all users, opt-in via config
- Prompt injection defense — layered content isolation protects against malicious instructions
- CLI utilities — manage plugin installation, project setup, and updates with a single
cfcommand.cf permissionlets you interactively configure Claude Code's tool permissions - ✨ Customizable Claude Code statusline with account info & API rate limit tracking
🧠 Opus (1M) cf v0.3.0 | 📂 MyProject (⎇ main) | 👤 Thi Dinh (me@dinhanhthi.com) ctx 42% | [5h] 30% → 2:30pm | [7d] 10% → mar 15, 2:30pm 📋 Tasks: 2/5 | 🤖 Agent: cf-reviewer
For full details, visit the official website.
Requires Node.js 20+ and Claude Code.
-
Install the CLI:
npm i -g coding-friend-cli -
Install the plugin:
cf installcfconflict? If another tool (e.g. Cloudflare'scf) already occupies that name, usecdf— it's an alias for the same CLI:cdf install,cdf init, etc.Or install manually (no CLI)
claude plugin marketplace add dinhanhthi/coding-friend claude plugin install coding-friend@coding-friend-marketplace # Or inside Claude Code session: /plugin marketplace add dinhanhthi/coding-friend /plugin install coding-friend@coding-friend-marketplace -
Initialize your workspace:
cf init -
Restart Claude Code
-
(Optional) Host your learning docs — browse
/cf-learnand/cf-teachnotes as a website or expose to other LLM clients:cf host # Serve docs/learn/ as a website at localhost:3333 cf mcp # Setup an MCP server so other LLM clients can read your notes
Coding Friend ships as two independent npm packages:
- Plugin (
coding-friend) — skills, agents, and hooks installed directly into Claude Code via the marketplace. Fully functional standalone. - CLI (
coding-friend-cli, binarycf) — optional companion that adds the memory MCP server (fast indexed recall), the learn-host doc viewer, statusline rendering, and workspace setup utilities.
| Tier | Meaning | Count today |
|---|---|---|
| NONE | Works with zero CLI involvement. | Skills: 9 · Agents: 11 · Hooks: 7 |
| OPTIONAL | Uses CLI-installed memory MCP for speed; falls back to grep + direct file writes when CLI is absent. Full functionality preserved. | Skills: 12 · Agents: 1 · Hooks: 3 |
| REQUIRED | Cannot function without CLI. | 0 |
Plugin-only quick-start — install via Claude Code marketplace, skip the CLI for now. You will lose: fast indexed memory search (falls back to grep -r '<query>' docs/memory/), the learn-host doc viewer, and the cf statusline renderer. Everything else works.
Add the CLI later:
npm i -g coding-friend-cli
cf init
cf memory initFor the full per-skill / per-agent / per-hook matrix and workarounds, see docs/cli-requirements.md.
| Command | Description |
|---|---|
/cf-ask [question] |
Quick Q&A about codebase |
/cf-commit [hint] |
Analyze diff and create conventional commit |
/cf-design [mode] [beta] |
UI design: scan patterns, design or modify UI consistently |
/cf-fix [bug] |
Quick bug fix workflow |
/cf-help [question] |
Answer questions about Coding Friend |
/cf-learn [topic] |
Extract learnings for human review |
/cf-optimize [target] |
Structured optimization with measurement |
/cf-plan [task] | /cf-plan --resume <path> |
Brainstorm and write implementation plan; --resume resumes an interrupted plan; --auto runs the whole thing end-to-end (auto review + fix + commit per phase) |
/cf-remember [topic] |
Capture project knowledge |
/cf-research [topic] |
In-depth research with web search |
/cf-review [target] |
Code review in forked subagent |
/cf-scan [desc] |
Scan project and bootstrap memory |
/cf-session [beta] |
Save/load Claude Code sessions |
/cf-ship [hint] |
Verify, commit, push, and create PR |
/cf-teach [topic] |
Personal teacher — conversational breakdown |
/cf-warm [--user] [beta] |
Catch up after absence — git history summary |
Auto-invoked skills (no slash needed): cf-tdd (add --auto for autopilot review+fix+commit after implementation), cf-sys-debug, cf-verification.
The plugin is managed by the CLI cf command. Learn more about the CLI in the CLI documentation.
For plugin developers, check plugin-dev.md.
Read the official documentation.
MIT