From 13874e6fdae6260673e2b4ea1d8b374dffd336f1 Mon Sep 17 00:00:00 2001 From: Shayan Rais Date: Mon, 2 Mar 2026 20:02:59 +0500 Subject: [PATCH] done --- !/tags/boris-team.svg | 17 ++ CLAUDE.md | 2 +- README.md | 18 +- best-practice/claude-skills.md | 162 ++++++++++++++++++ .../rpi/.claude/agents/code-reviewer.md | 0 .../agents/constitutional-validator.md | 0 .../agents/documentation-analyst-writer.md | 0 .../rpi/.claude/agents/product-manager.md | 0 .../rpi/.claude/agents/requirement-parser.md | 0 .../agents/senior-software-engineer.md | 0 .../.claude/agents/technical-cto-advisor.md | 0 .../rpi/.claude/agents/ux-designer.md | 0 .../rpi/.claude/commands/rpi/implement.md | 0 .../rpi/.claude/commands/rpi/plan.md | 0 .../rpi/.claude/commands/rpi/research.md | 0 .../rpi/rpi-workflow.md | 0 .../rpi/rpi-workflow.svg | 0 .../orchestration-workflow.md | 100 +++++------ presentation/index.html | 2 +- .../boris => tips/assets/boris-feb-26}/0.webp | Bin .../boris => tips/assets/boris-feb-26}/1.webp | Bin .../assets/boris-feb-26}/10.webp | Bin .../assets/boris-feb-26}/11.webp | Bin .../assets/boris-feb-26}/12.webp | Bin .../boris => tips/assets/boris-feb-26}/2.webp | Bin .../boris => tips/assets/boris-feb-26}/3.webp | Bin .../boris => tips/assets/boris-feb-26}/4.webp | Bin .../boris => tips/assets/boris-feb-26}/5.webp | Bin .../boris => tips/assets/boris-feb-26}/6.webp | Bin .../boris => tips/assets/boris-feb-26}/7.webp | Bin .../boris => tips/assets/boris-feb-26}/8.webp | Bin .../boris => tips/assets/boris-feb-26}/9.webp | Bin {reports => tips}/claude-boris-tips-feb-26.md | 26 +-- 33 files changed, 246 insertions(+), 81 deletions(-) create mode 100644 !/tags/boris-team.svg create mode 100644 best-practice/claude-skills.md rename {workflow => development-workflows}/rpi/.claude/agents/code-reviewer.md (100%) rename {workflow => development-workflows}/rpi/.claude/agents/constitutional-validator.md (100%) rename {workflow => development-workflows}/rpi/.claude/agents/documentation-analyst-writer.md (100%) rename {workflow => development-workflows}/rpi/.claude/agents/product-manager.md (100%) rename {workflow => development-workflows}/rpi/.claude/agents/requirement-parser.md (100%) rename {workflow => development-workflows}/rpi/.claude/agents/senior-software-engineer.md (100%) rename {workflow => development-workflows}/rpi/.claude/agents/technical-cto-advisor.md (100%) rename {workflow => development-workflows}/rpi/.claude/agents/ux-designer.md (100%) rename {workflow => development-workflows}/rpi/.claude/commands/rpi/implement.md (100%) rename {workflow => development-workflows}/rpi/.claude/commands/rpi/plan.md (100%) rename {workflow => development-workflows}/rpi/.claude/commands/rpi/research.md (100%) rename {workflow => development-workflows}/rpi/rpi-workflow.md (100%) rename {workflow => development-workflows}/rpi/rpi-workflow.svg (100%) rename {reports/assets/boris => tips/assets/boris-feb-26}/0.webp (100%) rename {reports/assets/boris => tips/assets/boris-feb-26}/1.webp (100%) rename {reports/assets/boris => tips/assets/boris-feb-26}/10.webp (100%) rename {reports/assets/boris => tips/assets/boris-feb-26}/11.webp (100%) rename {reports/assets/boris => tips/assets/boris-feb-26}/12.webp (100%) rename {reports/assets/boris => tips/assets/boris-feb-26}/2.webp (100%) rename {reports/assets/boris => tips/assets/boris-feb-26}/3.webp (100%) rename {reports/assets/boris => tips/assets/boris-feb-26}/4.webp (100%) rename {reports/assets/boris => tips/assets/boris-feb-26}/5.webp (100%) rename {reports/assets/boris => tips/assets/boris-feb-26}/6.webp (100%) rename {reports/assets/boris => tips/assets/boris-feb-26}/7.webp (100%) rename {reports/assets/boris => tips/assets/boris-feb-26}/8.webp (100%) rename {reports/assets/boris => tips/assets/boris-feb-26}/9.webp (100%) rename {reports => tips}/claude-boris-tips-feb-26.md (85%) diff --git a/!/tags/boris-team.svg b/!/tags/boris-team.svg new file mode 100644 index 0000000..f542c14 --- /dev/null +++ b/!/tags/boris-team.svg @@ -0,0 +1,17 @@ + + Boris Cherny + Team + + + + + + + + + + + + + Boris Cherny + Team + + diff --git a/CLAUDE.md b/CLAUDE.md index 5be679b..b96e7d6 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -93,7 +93,7 @@ From experience with this repository: - Create feature-specific subagents with skills (progressive disclosure) rather than general-purpose agents - Perform manual `/compact` at ~50% context usage - Start with plan mode for complex tasks -- Use human-gated todo list workflow for multi-step tasks +- Use human-gated task list workflow for multi-step tasks - Break subtasks small enough to complete in under 50% context ### Debugging Tips diff --git a/README.md b/README.md index 4bcf155..fd2d03a 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,7 @@ # claude-code-best-practice practice makes claude perfect -![Last Updated](https://img.shields.io/badge/Last_Updated-Mar_02%2C_2026_07%3A15_PM_PKT-white?style=flat&labelColor=555) GitHub Stars +![Last Updated](https://img.shields.io/badge/Last_Updated-Mar_02%2C_2026_08%3A02_PM_PKT-white?style=flat&labelColor=555) GitHub Stars [![Best Practice](!/tags/best-practice.svg)](best-practice/) *Click on this badge to show the latest best practice*
[![Implemented](!/tags/implemented.svg)](implementation/) *Click on this badge to show implementation in this repo*
@@ -23,7 +23,7 @@ practice makes claude perfect |---------|----------|-------------| | [**Commands**](https://code.claude.com/docs/en/skills) | `.claude/commands/.md` | [![Best Practice](!/tags/best-practice.svg)](best-practice/claude-commands.md) [![Implemented](!/tags/implemented.svg)](implementation/claude-commands-implementation.md) Entry-point prompts for workflows — invoke with `/command-name` | | [**Sub-Agents**](https://code.claude.com/docs/en/sub-agents) | `.claude/agents/.md` | [![Best Practice](!/tags/best-practice.svg)](best-practice/claude-subagents.md) [![Implemented](!/tags/implemented.svg)](implementation/claude-subagents-implementation.md) Custom agents with their own name, color, tools, permissions, and model | -| [**Skills**](https://code.claude.com/docs/en/skills) | `.claude/skills//SKILL.md` | [![Best Practice](!/tags/best-practice.svg)](best-practice/claude-commands.md#skills-frontmatter-fields) [![Implemented](!/tags/implemented.svg)](implementation/claude-skills-implementation.md) Reusable knowledge, workflows, and slash commands — load on-demand or invoke with `/skill-name` | +| [**Skills**](https://code.claude.com/docs/en/skills) | `.claude/skills//SKILL.md` | [![Best Practice](!/tags/best-practice.svg)](best-practice/claude-skills.md) [![Implemented](!/tags/implemented.svg)](implementation/claude-skills-implementation.md) Reusable knowledge, workflows, and slash commands — load on-demand or invoke with `/skill-name` | | [**Workflows**](https://code.claude.com/docs/en/common-workflows) | [`.claude/commands/weather-orchestrator.md`](.claude/commands/weather-orchestrator.md) | [![Orchestration Workflow](!/tags/orchestration-workflow.svg)](orchestration-workflow/orchestration-workflow.md) | | [**Hooks**](https://code.claude.com/docs/en/hooks) | `.claude/hooks/` | [![Best Practice](!/tags/best-practice.svg)](https://github.com/shanraisshan/claude-code-voice-hooks) [![Implemented](!/tags/implemented.svg)](.claude/hooks/) Deterministic scripts that run outside the agentic loop on specific events | | [**MCP Servers**](https://code.claude.com/docs/en/mcp) | `.claude/settings.json`, `.mcp.json` | [![Best Practice](!/tags/best-practice.svg)](best-practice/claude-mcp.md) [![Implemented](!/tags/implemented.svg)](.mcp.json) Model Context Protocol connections to external tools, databases, and APIs | @@ -49,7 +49,8 @@ practice makes claude perfect ## Orchestration Workflow -Workflow orchestration using the **Command → Agent → Skill** pattern. +See [orchestration-workflow](orchestration-workflow/orchestration-workflow.md) for implementation details of **Command → Agent → Skill** pattern. +

Command Skill Agent Architecture Flow @@ -61,10 +62,8 @@ Workflow orchestration using the **Command → Agent → Skill** pattern. | **Agent** | Fetches data with preloaded skill (agent skill) | [`weather-agent`](.claude/agents/weather-agent.md) with [`weather-fetcher`](.claude/skills/weather-fetcher/SKILL.md) | | **Skill** | Creates output independently (skill) | [`weather-svg-creator`](.claude/skills/weather-svg-creator/SKILL.md) | -See [orchestration-workflow](orchestration-workflow/orchestration-workflow.md) for implementation details. - -## DEVELOPMENT WORKFLOW -- [RPI](workflow/rpi/rpi-workflow.md) [![Implemented](!/tags/implemented.svg)](workflow/rpi/rpi-workflow.md) +## DEVELOPMENT WORKFLOWS +- [RPI](development-workflows/rpi/rpi-workflow.md) [![Implemented](!/tags/implemented.svg)](development-workflows/rpi/rpi-workflow.md) - [Boris Feb26 workflow](https://x.com/bcherny/status/2017742741636321619) - [Ralph plugin with sandbox](https://www.youtube.com/watch?v=eAtvoGlpeRU) [![Implemented](!/tags/implemented.svg)](https://github.com/shanraisshan/novel-llm-26) - [Human Layer RPI - Research Plan Implement](https://github.com/humanlayer/advanced-context-engineering-for-coding-agents/blob/main/ace-fca.md) @@ -107,12 +106,13 @@ See [orchestration-workflow](orchestration-workflow/orchestration-workflow.md) f - use mcp ([Claude in Chrome](https://code.claude.com/docs/en/chrome), [Playwright](https://github.com/microsoft/playwright-mcp), [Chrome DevTools](https://developer.chrome.com/blog/chrome-devtools-mcp)) to let claude see chrome console logs on its own - provide screenshots of the issue -![Boris Cherny](!/tags/boris-cherny.svg) +![Boris Cherny + Team](!/tags/boris-team.svg) - [Boris setup - 5 tips | 03/Jan/26]() ● [Tweet](https://x.com/bcherny/status/2007179832300581177) - [10 tips for using claude code by team itself | 01/Feb/26]() ● [Tweet](https://x.com/bcherny/status/2017742741636321619) -- [12 ways how people are customizing their claudes | 12/Feb/26](reports/claude-boris-tips-feb-26.md) ● [Tweet](https://x.com/bcherny/status/2021699851499798911) +- [12 ways how people are customizing their claudes | 12/Feb/26](tips/claude-boris-tips-feb-26.md) ● [Tweet](https://x.com/bcherny/status/2021699851499798911) - [Git Worktrees - 5 ways how boris is using | 21 Feb 2026]() ● [Tweet](https://x.com/bcherny/status/2025007393290272904) +- [Seeing like an Agent - lessons from building Claude Code (Thariq) | 28 Feb 2026]() ● [Article](https://x.com/trq212/status/2027463795355095314) ## REPORTS diff --git a/best-practice/claude-skills.md b/best-practice/claude-skills.md new file mode 100644 index 0000000..ba775de --- /dev/null +++ b/best-practice/claude-skills.md @@ -0,0 +1,162 @@ +# Skills Best Practice + +![Last Updated](https://img.shields.io/badge/Last_Updated-Mar_2%2C_2026-white?style=flat&labelColor=555)
+[![Implemented](https://img.shields.io/badge/Implemented-2ea44f?style=flat)](../implementation/claude-skills-implementation.md) + +Complete reference for Claude Code skills — skill definitions, frontmatter fields, and invocation patterns. + + + + + + +
← Back to Claude Code Best PracticeClaude
+ +--- + +## Frontmatter Fields + +Skills are defined in `.claude/skills//SKILL.md` with optional YAML frontmatter. + +| Field | Type | Required | Description | +|-------|------|----------|-------------| +| `name` | string | Recommended | Display name and `/slash-command` identifier. Defaults to the directory name if omitted | +| `description` | string | Recommended | What the skill does. Shown in autocomplete and used by Claude for auto-discovery | +| `argument-hint` | string | No | Hint shown during autocomplete (e.g., `[issue-number]`, `[filename]`) | +| `disable-model-invocation` | boolean | No | Set `true` to prevent Claude from automatically invoking this skill | +| `user-invocable` | boolean | No | Set `false` to hide from the `/` menu — skill becomes background knowledge only, intended for agent preloading | +| `allowed-tools` | string | No | Tools allowed without permission prompts when this skill is active | +| `model` | string | No | Model to use when this skill runs (e.g., `haiku`, `sonnet`, `opus`) | +| `context` | string | No | Set to `fork` to run the skill in an isolated subagent context | +| `agent` | string | No | Subagent type when `context: fork` is set (default: `general-purpose`) | +| `hooks` | object | No | Lifecycle hooks scoped to this skill | + +--- + +## Two Skill Patterns + +| Pattern | Loading | Invocation | Use Case | +|---------|---------|-----------|----------| +| **Skill** | On-demand | `/skill-name` or `Skill(skill: "name")` tool | Standalone reusable workflows invoked by commands or Claude | +| **Agent Skill** | Preloaded at agent startup via `skills:` field | Automatic — full content injected into agent context | Domain knowledge or procedures baked into a specific agent | + +--- + +## String Substitutions + +Available inside skill markdown for dynamic values: + +| Variable | Description | +|----------|-------------| +| `$ARGUMENTS` | All arguments passed when invoking the skill | +| `$ARGUMENTS[N]` | Access a specific argument by 0-based index | +| `$N` | Shorthand for `$ARGUMENTS[N]` (e.g., `$0`, `$1`) | +| `${CLAUDE_SESSION_ID}` | Current session identifier | +| `` !`command` `` | Dynamic context injection — shell command output replaces the placeholder before Claude sees it | + +--- + +## Invocation + +| Method | Description | +|--------|-------------| +| `/skill-name` | Invoke directly from the slash command menu | +| `/skill-name [args]` | Pass arguments that map to `$ARGUMENTS` | +| `Skill(skill: "name")` | Programmatic invocation via the Skill tool (used in commands and agents) | +| `skills: [name]` in agent frontmatter | Preload into an agent — full skill content injected at startup, not invoked on-demand | +| Subdirectories | Skills in subdirectories use `/subdir:skill-name` | + +--- + +## Example: Minimal Skill + +```yaml +--- +description: Summarize staged changes into a concise changelog entry +--- + +Summarize the git diff in context into a one-paragraph changelog entry, +focusing on what changed and why. +``` + +## Example: Minimal Agent Skill + +A skill preloaded into an agent as background knowledge — hidden from the `/` menu: + +```yaml +--- +name: deploy-checklist +description: Pre-flight deployment checks for production releases +user-invocable: false +--- + +# Deploy Checklist + +Before any production deployment: +1. Run all tests: `npm test` +2. Check for uncommitted changes: `git status` +3. Verify environment variables are set +4. Confirm database migrations are ready +``` + +## Example: Full-Featured Skill (All Fields) + +```yaml +--- +name: code-review +description: Review code for quality, security, and performance issues +argument-hint: [file-path] +allowed-tools: Read, Grep, Glob +model: sonnet +context: fork +agent: general-purpose +hooks: + Stop: + - hooks: + - type: command + command: "./scripts/log-review-complete.sh" +--- + +Review the code at $0. + +## Checklist +- [ ] Security: injection, XSS, hardcoded secrets +- [ ] Performance: N+1 queries, unnecessary loops +- [ ] Quality: naming, complexity, test coverage +- [ ] Error handling: edge cases, failure modes +``` + +--- + +## Scope and Priority + +When multiple skills share the same name, the higher-priority location wins: + +| Location | Scope | Priority | +|----------|-------|----------| +| Project (`.claude/skills/`) | This project only | 1 (highest) | +| Personal (`~/.claude/skills/`) | All your projects | 2 | +| Plugin (`/skills/`) | Where plugin is enabled | 3 (lowest) | + +--- + +## Skills in This Repository + +Skills defined in `.claude/skills/` for this project: + +| Skill | User-Invocable | Preloaded Into | Description | +|-------|----------------|----------------|-------------| +| [`weather-svg-creator`](../.claude/skills/weather-svg-creator/SKILL.md) | Yes | — | Creates SVG weather card and writes output files | +| [`weather-fetcher`](../.claude/skills/weather-fetcher/SKILL.md) | No | `weather-agent` | Fetches current temperature from wttr.in API | +| [`agent-browser`](../.claude/skills/agent-browser/SKILL.md) | Yes | — | Browser automation CLI for AI agents | +| [`presentation/vibe-to-agentic-framework`](../.claude/skills/presentation/vibe-to-agentic-framework/SKILL.md) | Yes | `presentation-curator` | Conceptual framework behind the presentation | +| [`presentation/presentation-structure`](../.claude/skills/presentation/presentation-structure/SKILL.md) | Yes | `presentation-curator` | Slide format, weight system, and section structure | +| [`presentation/presentation-styling`](../.claude/skills/presentation/presentation-styling/SKILL.md) | Yes | `presentation-curator` | CSS classes, component patterns, and syntax highlighting | + +--- + +## Sources + +- [Claude Code Skills — Docs](https://code.claude.com/docs/en/skills) +- [Skills Discovery in Monorepos](../reports/claude-skills-for-larger-mono-repos.md) +- [Claude Code CHANGELOG](https://github.com/anthropics/claude-code/blob/main/CHANGELOG.md) diff --git a/workflow/rpi/.claude/agents/code-reviewer.md b/development-workflows/rpi/.claude/agents/code-reviewer.md similarity index 100% rename from workflow/rpi/.claude/agents/code-reviewer.md rename to development-workflows/rpi/.claude/agents/code-reviewer.md diff --git a/workflow/rpi/.claude/agents/constitutional-validator.md b/development-workflows/rpi/.claude/agents/constitutional-validator.md similarity index 100% rename from workflow/rpi/.claude/agents/constitutional-validator.md rename to development-workflows/rpi/.claude/agents/constitutional-validator.md diff --git a/workflow/rpi/.claude/agents/documentation-analyst-writer.md b/development-workflows/rpi/.claude/agents/documentation-analyst-writer.md similarity index 100% rename from workflow/rpi/.claude/agents/documentation-analyst-writer.md rename to development-workflows/rpi/.claude/agents/documentation-analyst-writer.md diff --git a/workflow/rpi/.claude/agents/product-manager.md b/development-workflows/rpi/.claude/agents/product-manager.md similarity index 100% rename from workflow/rpi/.claude/agents/product-manager.md rename to development-workflows/rpi/.claude/agents/product-manager.md diff --git a/workflow/rpi/.claude/agents/requirement-parser.md b/development-workflows/rpi/.claude/agents/requirement-parser.md similarity index 100% rename from workflow/rpi/.claude/agents/requirement-parser.md rename to development-workflows/rpi/.claude/agents/requirement-parser.md diff --git a/workflow/rpi/.claude/agents/senior-software-engineer.md b/development-workflows/rpi/.claude/agents/senior-software-engineer.md similarity index 100% rename from workflow/rpi/.claude/agents/senior-software-engineer.md rename to development-workflows/rpi/.claude/agents/senior-software-engineer.md diff --git a/workflow/rpi/.claude/agents/technical-cto-advisor.md b/development-workflows/rpi/.claude/agents/technical-cto-advisor.md similarity index 100% rename from workflow/rpi/.claude/agents/technical-cto-advisor.md rename to development-workflows/rpi/.claude/agents/technical-cto-advisor.md diff --git a/workflow/rpi/.claude/agents/ux-designer.md b/development-workflows/rpi/.claude/agents/ux-designer.md similarity index 100% rename from workflow/rpi/.claude/agents/ux-designer.md rename to development-workflows/rpi/.claude/agents/ux-designer.md diff --git a/workflow/rpi/.claude/commands/rpi/implement.md b/development-workflows/rpi/.claude/commands/rpi/implement.md similarity index 100% rename from workflow/rpi/.claude/commands/rpi/implement.md rename to development-workflows/rpi/.claude/commands/rpi/implement.md diff --git a/workflow/rpi/.claude/commands/rpi/plan.md b/development-workflows/rpi/.claude/commands/rpi/plan.md similarity index 100% rename from workflow/rpi/.claude/commands/rpi/plan.md rename to development-workflows/rpi/.claude/commands/rpi/plan.md diff --git a/workflow/rpi/.claude/commands/rpi/research.md b/development-workflows/rpi/.claude/commands/rpi/research.md similarity index 100% rename from workflow/rpi/.claude/commands/rpi/research.md rename to development-workflows/rpi/.claude/commands/rpi/research.md diff --git a/workflow/rpi/rpi-workflow.md b/development-workflows/rpi/rpi-workflow.md similarity index 100% rename from workflow/rpi/rpi-workflow.md rename to development-workflows/rpi/rpi-workflow.md diff --git a/workflow/rpi/rpi-workflow.svg b/development-workflows/rpi/rpi-workflow.svg similarity index 100% rename from workflow/rpi/rpi-workflow.svg rename to development-workflows/rpi/rpi-workflow.svg diff --git a/orchestration-workflow/orchestration-workflow.md b/orchestration-workflow/orchestration-workflow.md index 74ac8c4..c602a5d 100644 --- a/orchestration-workflow/orchestration-workflow.md +++ b/orchestration-workflow/orchestration-workflow.md @@ -23,63 +23,49 @@ This showcases the **Command → Agent → Skill** architecture pattern, where: ## Flow Diagram ``` - ┌─────────────────────────────────────────────────┐ - │ User Interaction │ - └─────────────────────────────────────────────────┘ - │ - ▼ - ┌───────────────────────────┐ - │ /weather-orchestrator │ - │ Command │ - │ (Entry point) │ - └───────────────────────────┘ - │ - ┌─────────────┤ - │ │ - ▼ │ - ┌──────────────┐ │ - │ AskUser │ │ - │ C° or F°? │ │ - └──────────────┘ │ - │ │ - ▼ │ - Step 2: Task tool │ - │ │ - ▼ │ - ┌───────────────────────────┐ - │ weather-agent │ - │ Agent │ - │ │ - │ preloaded skill: │ - │ - weather-fetcher │ - └───────────────────────────┘ - │ - │ Returns: temperature + unit - │ - ▼ - Step 3: Skill tool - │ - ▼ - ┌───────────────────────────┐ - │ weather-svg-creator │ - │ Skill │ - │ │ - │ Creates SVG card │ - │ Writes output files │ - └───────────────────────────┘ - │ - ┌────────┴────────┐ - │ │ - ▼ ▼ -┌──────────────────┐ ┌──────────────────┐ -│ weather.svg │ │ output.md │ -└──────────────────┘ └──────────────────┘ - │ - ▼ - ┌───────────────────────────┐ - │ Display Summary │ - │ to User │ - └───────────────────────────┘ +╔══════════════════════════════════════════════════════════════════╗ +║ ORCHESTRATION WORKFLOW ║ +║ Command → Agent → Skill ║ +╚══════════════════════════════════════════════════════════════════╝ + + ┌───────────────────┐ + │ User Interaction │ + └─────────┬─────────┘ + │ + ▼ + ┌─────────────────────────────────────────────────────┐ + │ /weather-orchestrator — Command (Entry Point) │ + └─────────────────────────┬───────────────────────────┘ + │ + Step 1 + │ + ▼ + ┌────────────────────────┐ + │ AskUser — C° or F°? │ + └────────────┬───────────┘ + │ + Step 2 — Task tool + │ + ▼ + ┌─────────────────────────────────────────────────────┐ + │ weather-agent — Agent ● skill: weather-fetcher │ + └─────────────────────────┬───────────────────────────┘ + │ + Returns: temp + unit + │ + Step 3 — Skill tool + │ + ▼ + ┌─────────────────────────────────────────────────────┐ + │ weather-svg-creator — Skill ● SVG card + output │ + └─────────────────────────┬───────────────────────────┘ + │ + ┌────────┴────────┐ + │ │ + ▼ ▼ + ┌────────────┐ ┌────────────┐ + │weather.svg │ │ output.md │ + └────────────┘ └────────────┘ ``` ## Component Details diff --git a/presentation/index.html b/presentation/index.html index 09db98c..b370508 100644 --- a/presentation/index.html +++ b/presentation/index.html @@ -1644,7 +1644,7 @@ managed-settings.json # Organization policy (

Resources

📖
Claude Code Docscode.claude.com/docs/en
-
💡
Boris Cherny's 12 Tipsreports/claude-boris-tips-feb-26.md
+
💡
Boris Cherny's 12 Tipstips/claude-boris-tips-feb-26.md
🏗
This RepositoryWorking examples of skills, agents, hooks, and the Command → Agent → Skills pattern
🔧
Claude Code Voice Hooksgithub.com/shanraisshan/claude-code-voice-hooks
diff --git a/reports/assets/boris/0.webp b/tips/assets/boris-feb-26/0.webp similarity index 100% rename from reports/assets/boris/0.webp rename to tips/assets/boris-feb-26/0.webp diff --git a/reports/assets/boris/1.webp b/tips/assets/boris-feb-26/1.webp similarity index 100% rename from reports/assets/boris/1.webp rename to tips/assets/boris-feb-26/1.webp diff --git a/reports/assets/boris/10.webp b/tips/assets/boris-feb-26/10.webp similarity index 100% rename from reports/assets/boris/10.webp rename to tips/assets/boris-feb-26/10.webp diff --git a/reports/assets/boris/11.webp b/tips/assets/boris-feb-26/11.webp similarity index 100% rename from reports/assets/boris/11.webp rename to tips/assets/boris-feb-26/11.webp diff --git a/reports/assets/boris/12.webp b/tips/assets/boris-feb-26/12.webp similarity index 100% rename from reports/assets/boris/12.webp rename to tips/assets/boris-feb-26/12.webp diff --git a/reports/assets/boris/2.webp b/tips/assets/boris-feb-26/2.webp similarity index 100% rename from reports/assets/boris/2.webp rename to tips/assets/boris-feb-26/2.webp diff --git a/reports/assets/boris/3.webp b/tips/assets/boris-feb-26/3.webp similarity index 100% rename from reports/assets/boris/3.webp rename to tips/assets/boris-feb-26/3.webp diff --git a/reports/assets/boris/4.webp b/tips/assets/boris-feb-26/4.webp similarity index 100% rename from reports/assets/boris/4.webp rename to tips/assets/boris-feb-26/4.webp diff --git a/reports/assets/boris/5.webp b/tips/assets/boris-feb-26/5.webp similarity index 100% rename from reports/assets/boris/5.webp rename to tips/assets/boris-feb-26/5.webp diff --git a/reports/assets/boris/6.webp b/tips/assets/boris-feb-26/6.webp similarity index 100% rename from reports/assets/boris/6.webp rename to tips/assets/boris-feb-26/6.webp diff --git a/reports/assets/boris/7.webp b/tips/assets/boris-feb-26/7.webp similarity index 100% rename from reports/assets/boris/7.webp rename to tips/assets/boris-feb-26/7.webp diff --git a/reports/assets/boris/8.webp b/tips/assets/boris-feb-26/8.webp similarity index 100% rename from reports/assets/boris/8.webp rename to tips/assets/boris-feb-26/8.webp diff --git a/reports/assets/boris/9.webp b/tips/assets/boris-feb-26/9.webp similarity index 100% rename from reports/assets/boris/9.webp rename to tips/assets/boris-feb-26/9.webp diff --git a/reports/claude-boris-tips-feb-26.md b/tips/claude-boris-tips-feb-26.md similarity index 85% rename from reports/claude-boris-tips-feb-26.md rename to tips/claude-boris-tips-feb-26.md index a1b6f66..89a4f7f 100644 --- a/reports/claude-boris-tips-feb-26.md +++ b/tips/claude-boris-tips-feb-26.md @@ -15,7 +15,7 @@ A summary of customization tips shared by Boris Cherny ([@bcherny](https://x.com Boris Cherny highlighted that customizability is one of the things engineers love most about Claude Code — hooks, plugins, LSPs, MCPs, skills, effort, custom agents, status lines, output styles, and more. He shared 12 practical ways developers and teams are customizing their setups. -Boris Cherny intro tweet +Boris Cherny intro tweet --- @@ -28,7 +28,7 @@ Set up your terminal for the best Claude Code experience: - **Newlines**: If using Claude Code in an IDE terminal, Apple Terminal, Warp, or Alacritty, run `/terminal-setup` to enable shift+enter for newlines (so you don't need to type `\`) - **Vim mode**: Run `/vim` -Configure your terminal +Configure your terminal --- @@ -42,7 +42,7 @@ Run `/model` to pick your preferred effort level: Boris's preference: High for everything. -Adjust effort level +Adjust effort level --- @@ -54,7 +54,7 @@ Install from the official Anthropic plugin marketplace, or create your own marke Run `/plugin` to get started. -Install Plugins, MCPs, and Skills +Install Plugins, MCPs, and Skills --- @@ -66,7 +66,7 @@ You can also set the default agent for the main conversation using the `"agent"` Run `/agents` to get started. -Create custom agents +Create custom agents --- @@ -78,7 +78,7 @@ Out of the box, a small set of safe commands are pre-approved. To pre-approve mo Full wildcard syntax is supported — e.g., `Bash(bun run *)` or `Edit(/docs/**)`. -Pre-approve common permissions +Pre-approve common permissions --- @@ -88,7 +88,7 @@ Opt into Claude Code's open source sandbox runtime to improve safety while reduc Run `/sandbox` to enable it. Sandboxing runs on your machine and supports both file and network isolation. -Enable sandboxing +Enable sandboxing --- @@ -98,7 +98,7 @@ Custom status lines show up right below the composer, displaying model, director Every team member can have a different statusline. Use `/statusline` to have Claude generate one based on your `.bashrc`/`.zshrc`. -Add a status line +Add a status line --- @@ -106,7 +106,7 @@ Every team member can have a different statusline. Use `/statusline` to have Cla Every key binding in Claude Code is customizable. Run `/keybindings` to re-map any key. Settings live reload so you can see how it feels immediately. -Customize your keybindings +Customize your keybindings --- @@ -120,7 +120,7 @@ Hooks let you deterministically hook into Claude's lifecycle: Ask Claude to add a hook to get started. -Set up hooks +Set up hooks --- @@ -128,7 +128,7 @@ Ask Claude to add a hook to get started. Customize your spinner verbs to add or replace the default list with your own verbs. Check the `settings.json` into source control to share verbs with your team. -Customize your spinner verbs +Customize your spinner verbs --- @@ -140,7 +140,7 @@ Run `/config` and set an output style to have Claude respond using a different t - **Learning** — to have Claude coach you through making code changes - **Custom** — create custom output styles to adjust Claude's voice -Use output styles +Use output styles --- @@ -155,7 +155,7 @@ Claude Code works great out of the box, but when you do customize, check your `s With 37 settings and 84 environment variables (use the `"env"` field in your `settings.json` to avoid wrapper scripts), there's a good chance any behavior you want is configurable. -Customize all the things +Customize all the things ---