<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Claude-Code on emsenn.net</title>
    <link>https://emsenn.net/tags/claude-code/</link>
    <description>Recent content in Claude-Code on emsenn.net</description>
    <generator>Hugo</generator>
    <language>en</language>
    <lastBuildDate>Sat, 04 Apr 2026 00:00:00 +0000</lastBuildDate>
    <atom:link href="https://emsenn.net/tags/claude-code/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>ECC Hook Architecture Analysis</title>
      <link>https://emsenn.net/library/domains/engineering/domains/tech/domains/computing/texts/ecc-hook-architecture-analysis/</link>
      <pubDate>Sat, 04 Apr 2026 00:00:00 +0000</pubDate>
      <guid>https://emsenn.net/library/domains/engineering/domains/tech/domains/computing/texts/ecc-hook-architecture-analysis/</guid>
      <description>&lt;p&gt;Everything Claude Code (ECC) is the most mature open-source Claude Code plugin, with 25+ hooks across 7 lifecycle events, a shared utility library, and a profile-gated execution framework. This analysis compares ECC&amp;rsquo;s hook architecture against the 561 harness to identify patterns worth adopting, hooks worth porting, and design decisions worth understanding.&lt;/p&gt;&#xA;&lt;h2 id=&#34;architecture-overview&#34;&gt;&lt;a href=&#34;#architecture-overview&#34; class=&#34;heading-anchor&#34; aria-label=&#34;Link to this section&#34;&gt;¶&lt;/a&gt;Architecture Overview&#xA;&lt;/h2&gt;&#xA;&lt;h3 id=&#34;ecc-hook-inventory&#34;&gt;&lt;a href=&#34;#ecc-hook-inventory&#34; class=&#34;heading-anchor&#34; aria-label=&#34;Link to this section&#34;&gt;¶&lt;/a&gt;ECC Hook Inventory&#xA;&lt;/h3&gt;&#xA;&lt;p&gt;ECC registers hooks across every Claude Code lifecycle event:&lt;/p&gt;</description>
    </item>
    <item>
      <title>Claude Code Development and Adoption</title>
      <link>https://emsenn.net/library/domains/engineering/domains/tech/domains/computing/domains/artificial-intelligence/domains/software/texts/claude-code-development-and-adoption/</link>
      <pubDate>Mon, 30 Mar 2026 00:00:00 +0000</pubDate>
      <guid>https://emsenn.net/library/domains/engineering/domains/tech/domains/computing/domains/artificial-intelligence/domains/software/texts/claude-code-development-and-adoption/</guid>
      <description>&lt;p&gt;&lt;a href=&#34;../terms/claude-code.md&#34; class=&#34;link-internal&#34;&gt;Claude Code&lt;/a&gt; originated as an internal engineering tool at &lt;a href=&#34;../../../../../terms/anthropic.md&#34; class=&#34;link-internal&#34;&gt;Anthropic&lt;/a&gt; — built by the company&amp;rsquo;s own engineers to accelerate their work on &lt;a href=&#34;../../../../../terms/claude.md&#34; class=&#34;link-internal&#34;&gt;Claude&lt;/a&gt; models. The trajectory from internal experiment to externally available product to billion-dollar revenue line was rapid, spanning roughly a year.&lt;/p&gt;&#xA;&lt;h2 id=&#34;timeline&#34;&gt;&lt;a href=&#34;#timeline&#34; class=&#34;heading-anchor&#34; aria-label=&#34;Link to this section&#34;&gt;¶&lt;/a&gt;Timeline&#xA;&lt;/h2&gt;&#xA;&lt;p&gt;&lt;strong&gt;February 2025 — Research preview.&lt;/strong&gt; Claude Code launched publicly as a limited research preview alongside Claude 3.7 Sonnet. The initial form was a CLI tool (&lt;code&gt;claude&lt;/code&gt; command, installed via npm) that operated as a terminal-based agent. It could read files, edit code, run shell commands, and manage git workflows, but required a terminal and developer familiarity to use.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Extension Architecture in Claude Code</title>
      <link>https://emsenn.net/library/domains/engineering/domains/tech/domains/computing/domains/artificial-intelligence/domains/software/texts/claude-code-extension-architecture/</link>
      <pubDate>Mon, 30 Mar 2026 00:00:00 +0000</pubDate>
      <guid>https://emsenn.net/library/domains/engineering/domains/tech/domains/computing/domains/artificial-intelligence/domains/software/texts/claude-code-extension-architecture/</guid>
      <description>&lt;p&gt;&lt;a href=&#34;../terms/claude-code.md&#34; class=&#34;link-internal&#34;&gt;Claude Code&lt;/a&gt; is extensible through four mechanisms. They operate at different levels of the system and serve different purposes. Understanding which mechanism to use for a given customization is the central design decision when configuring Claude Code for a project.&lt;/p&gt;&#xA;&lt;h2 id=&#34;the-four-mechanisms&#34;&gt;&lt;a href=&#34;#the-four-mechanisms&#34; class=&#34;heading-anchor&#34; aria-label=&#34;Link to this section&#34;&gt;¶&lt;/a&gt;The four mechanisms&#xA;&lt;/h2&gt;&#xA;&lt;table&gt;&#xA;  &lt;thead&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;th&gt;Mechanism&lt;/th&gt;&#xA;          &lt;th&gt;What it is&lt;/th&gt;&#xA;          &lt;th&gt;When it loads&lt;/th&gt;&#xA;          &lt;th&gt;What it affects&lt;/th&gt;&#xA;          &lt;th&gt;Deterministic?&lt;/th&gt;&#xA;      &lt;/tr&gt;&#xA;  &lt;/thead&gt;&#xA;  &lt;tbody&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td&gt;&lt;a href=&#34;../terms/claude-md.md&#34; class=&#34;link-internal&#34;&gt;CLAUDE.md&lt;/a&gt;&lt;/td&gt;&#xA;          &lt;td&gt;Markdown instruction file&lt;/td&gt;&#xA;          &lt;td&gt;Every session (root) or lazily (subdirectory)&lt;/td&gt;&#xA;          &lt;td&gt;Model reasoning and decisions&lt;/td&gt;&#xA;          &lt;td&gt;No — advisory&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td&gt;&lt;a href=&#34;../terms/slash-commands.md&#34; class=&#34;link-internal&#34;&gt;Skills&lt;/a&gt;&lt;/td&gt;&#xA;          &lt;td&gt;SKILL.md files invoked with &lt;code&gt;/name&lt;/code&gt;&lt;/td&gt;&#xA;          &lt;td&gt;On demand (user or model invocation)&lt;/td&gt;&#xA;          &lt;td&gt;Model reasoning for a specific task&lt;/td&gt;&#xA;          &lt;td&gt;No — advisory&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td&gt;&lt;a href=&#34;../terms/hooks.md&#34; class=&#34;link-internal&#34;&gt;Hooks&lt;/a&gt;&lt;/td&gt;&#xA;          &lt;td&gt;Shell commands in settings.json&lt;/td&gt;&#xA;          &lt;td&gt;On tool-call lifecycle events&lt;/td&gt;&#xA;          &lt;td&gt;Runtime behavior before/after tool execution&lt;/td&gt;&#xA;          &lt;td&gt;Yes — mandatory&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td&gt;&lt;a href=&#34;../../../../agents/domains/model-context-protocol/terms/model-context-protocol.md&#34; class=&#34;link-internal&#34;&gt;MCP servers&lt;/a&gt;&lt;/td&gt;&#xA;          &lt;td&gt;External processes exposing tools/resources&lt;/td&gt;&#xA;          &lt;td&gt;At session start (configured servers)&lt;/td&gt;&#xA;          &lt;td&gt;Available tool set and data sources&lt;/td&gt;&#xA;          &lt;td&gt;Yes — tool availability is deterministic; tool invocation is model-decided&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;  &lt;/tbody&gt;&#xA;&lt;/table&gt;&#xA;&lt;h2 id=&#34;the-distinction-that-matters&#34;&gt;&lt;a href=&#34;#the-distinction-that-matters&#34; class=&#34;heading-anchor&#34; aria-label=&#34;Link to this section&#34;&gt;¶&lt;/a&gt;The distinction that matters&#xA;&lt;/h2&gt;&#xA;&lt;p&gt;The four mechanisms split along two axes:&lt;/p&gt;</description>
    </item>
    <item>
      <title>CLAUDE.md</title>
      <link>https://emsenn.net/library/domains/engineering/domains/tech/domains/computing/domains/artificial-intelligence/domains/software/terms/claude-md/</link>
      <pubDate>Sat, 07 Mar 2026 00:00:00 +0000</pubDate>
      <guid>https://emsenn.net/library/domains/engineering/domains/tech/domains/computing/domains/artificial-intelligence/domains/software/terms/claude-md/</guid>
      <description>&lt;p&gt;A CLAUDE.md file is a markdown document that Claude Code reads at the start&#xA;of every conversation. It provides persistent, project-specific context that&#xA;the agent cannot infer from code alone.&lt;/p&gt;&#xA;&lt;h2 id=&#34;load-order&#34;&gt;&lt;a href=&#34;#load-order&#34; class=&#34;heading-anchor&#34; aria-label=&#34;Link to this section&#34;&gt;¶&lt;/a&gt;Load order&#xA;&lt;/h2&gt;&#xA;&lt;p&gt;Claude Code loads CLAUDE.md files from four locations, additively:&lt;/p&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;&lt;strong&gt;Global&lt;/strong&gt; (&lt;code&gt;~/.claude/CLAUDE.md&lt;/code&gt;) — personal preferences, all projects&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;Project root&lt;/strong&gt; (&lt;code&gt;./CLAUDE.md&lt;/code&gt;) — committed to version control, shared&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;Subdirectory&lt;/strong&gt; (&lt;code&gt;path/to/dir/CLAUDE.md&lt;/code&gt;) — loaded lazily when Claude&#xA;works in that directory&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;User-specific&lt;/strong&gt; (&lt;code&gt;.claude/CLAUDE.md&lt;/code&gt;) — personal overrides, gitignored&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;p&gt;Ancestor files load at startup. Subdirectory files load lazily when the&#xA;agent touches files in that directory. Sibling directories never&#xA;cross-load.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Progressive Disclosure in Agent Instructions</title>
      <link>https://emsenn.net/library/domains/engineering/domains/tech/domains/computing/domains/artificial-intelligence/domains/software/terms/progressive-disclosure/</link>
      <pubDate>Sat, 07 Mar 2026 00:00:00 +0000</pubDate>
      <guid>https://emsenn.net/library/domains/engineering/domains/tech/domains/computing/domains/artificial-intelligence/domains/software/terms/progressive-disclosure/</guid>
      <description>&lt;p&gt;Progressive disclosure is an information architecture principle applied to&#xA;AI agent instruction files. The root instruction file (CLAUDE.md or&#xA;AGENTS.md) contains only universally applicable rules. Task-specific,&#xA;domain-specific, or tool-specific instructions live in subdirectory files,&#xA;skill documents, or referenced specifications.&lt;/p&gt;&#xA;&lt;h2 id=&#34;why-it-matters&#34;&gt;&lt;a href=&#34;#why-it-matters&#34; class=&#34;heading-anchor&#34; aria-label=&#34;Link to this section&#34;&gt;¶&lt;/a&gt;Why it matters&#xA;&lt;/h2&gt;&#xA;&lt;p&gt;Every token in a root instruction file loads on every request. Long root&#xA;files create three problems:&lt;/p&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;&lt;strong&gt;Budget pressure&lt;/strong&gt; — instruction-following quality degrades as&#xA;instruction count rises.&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;Relevance dilution&lt;/strong&gt; — instructions irrelevant to the current task&#xA;compete for attention with relevant ones.&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;Staleness risk&lt;/strong&gt; — more content means more surface area for drift&#xA;between instructions and actual project state.&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;h2 id=&#34;the-layering-pattern&#34;&gt;&lt;a href=&#34;#the-layering-pattern&#34; class=&#34;heading-anchor&#34; aria-label=&#34;Link to this section&#34;&gt;¶&lt;/a&gt;The layering pattern&#xA;&lt;/h2&gt;&#xA;&lt;table&gt;&#xA;  &lt;thead&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;th&gt;Layer&lt;/th&gt;&#xA;          &lt;th&gt;File&lt;/th&gt;&#xA;          &lt;th&gt;Loaded when&lt;/th&gt;&#xA;          &lt;th&gt;Contains&lt;/th&gt;&#xA;      &lt;/tr&gt;&#xA;  &lt;/thead&gt;&#xA;  &lt;tbody&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td&gt;Root&lt;/td&gt;&#xA;          &lt;td&gt;&lt;code&gt;CLAUDE.md&lt;/code&gt; (repo root)&lt;/td&gt;&#xA;          &lt;td&gt;Every session&lt;/td&gt;&#xA;          &lt;td&gt;Build commands, architectural constraints, what not to touch, pointers to key files&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td&gt;Subdirectory&lt;/td&gt;&#xA;          &lt;td&gt;&lt;code&gt;subdir/CLAUDE.md&lt;/code&gt;&lt;/td&gt;&#xA;          &lt;td&gt;When working in that directory&lt;/td&gt;&#xA;          &lt;td&gt;Local conventions, tool-specific setup, domain rules&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td&gt;Skill&lt;/td&gt;&#xA;          &lt;td&gt;&lt;code&gt;skills/*/SKILL.md&lt;/code&gt;&lt;/td&gt;&#xA;          &lt;td&gt;When skill is invoked&lt;/td&gt;&#xA;          &lt;td&gt;Detailed operational instructions for one task&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td&gt;Reference&lt;/td&gt;&#xA;          &lt;td&gt;Specification or guide files&lt;/td&gt;&#xA;          &lt;td&gt;When agent reads them on demand&lt;/td&gt;&#xA;          &lt;td&gt;Full style guides, formalization protocols, domain specs&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;  &lt;/tbody&gt;&#xA;&lt;/table&gt;&#xA;&lt;h2 id=&#34;in-this-repository&#34;&gt;&lt;a href=&#34;#in-this-repository&#34; class=&#34;heading-anchor&#34; aria-label=&#34;Link to this section&#34;&gt;¶&lt;/a&gt;In this repository&#xA;&lt;/h2&gt;&#xA;&lt;p&gt;The emsenn.net repository applies progressive disclosure across two layers:&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
