Skip to content

Token-Efficient Command Architecture ​

Overview ​

This repository demonstrates a token-efficient approach to Claude Code commands, reducing AI token consumption by 85-90% through npm script delegation.

🎯 Choosing the Right Approach ​

This repository demonstrates various ways of setting up Claude Code commands, including methods that limit token usage. You'll see these three methods:

ApproachToken CostBest ForExample
Direct Implementation~2000 tokensLearning patterns, one-off tasks, custom logicClaude analyzes and formats commits directly
Script Delegation~100 tokensRepetitive tasks, stable operationsnpm run lint instead of manual checks
Hybrid Approach~500 tokensComplex orchestration, intelligent automationScript collects data, Claude makes decisions

When to Use Each Approach ​

Use Direct Implementation when:

  • Teaching or learning new patterns
  • Solving unique, one-time problems
  • Customization is more valuable than efficiency
  • You need to see Claude's problem-solving process

Use Script Delegation when:

  • The task is repetitive and well-defined
  • The logic rarely changes
  • Speed and consistency matter more than flexibility
  • You're doing the same thing multiple times per session

Use Hybrid Approach when:

  • You need both efficiency and intelligence
  • The task has stable parts and variable parts
  • You want to leverage existing tools with AI judgment
  • Real-world complexity requires both patterns

Each command in this repository includes metadata showing its approach and typical token usage, helping you understand the real costs and benefits of different patterns.

The Problem ​

Traditional Claude Code commands embed all logic directly in markdown files:

  • Commands average 250-450 lines
  • Claude reads entire file content on each use
  • 19 commands × 300 lines = 5,700 lines per full scan
  • Significant token consumption for repetitive tasks

The Solution: NPM Script Delegation ​

Architecture ​

┌─────────────────────┐
│  Minimal Command    │  (20-40 lines)
│   /hygiene.md       │
└──────────┬──────────┘
           │ Delegates to
           ▼
┌─────────────────────┐
│   NPM Scripts       │  (package.json)
│  npm run hygiene    │
└─────────────────────┘

Token Savings ​

CommandOriginalOptimizedReduction
/hygiene264 lines30 lines88%
/commit296 lines33 lines88%
/maintainability458 lines42 lines90%
/todo305 lines43 lines85%
Average330 lines37 lines89%

Implementation Guide ​

1. Create NPM Scripts ​

Add comprehensive scripts to package.json:

json
{
  "scripts": {
    "hygiene": "npm run hygiene:quick --silent",
    "hygiene:quick": "npm run lint:check && npm run test:check",
    "lint:check": "eslint . --max-warnings 10 || echo 'No linter'",
    "test:check": "npm test || echo 'No tests'"
  }
}

2. Minimize Command Files ​

Transform verbose commands into minimal delegates:

Before (264 lines):

markdown
# Project Hygiene Check

[... 250+ lines of bash logic ...]

After (30 lines):

markdown
# Project Hygiene Check

\`\`\`bash
npm run hygiene:full --silent
\`\`\`

3. Benefits ​

For Users ​

  • Faster Claude responses - Less content to parse
  • Lower costs - Fewer tokens consumed
  • Better performance - Scripts run natively
  • Reusability - Scripts work without Claude

For Development ​

  • Maintainability - Logic in one place
  • Testability - Scripts testable independently
  • Version control - Smaller diffs
  • Cross-platform - NPM works everywhere

Usage Patterns ​

Direct NPM Script Execution ​

Users can run scripts directly without Claude:

bash
npm run hygiene
npm run lint:check
npm run maintain:debt

Command Templates ​

Commands become simple script invocations:

bash
/hygiene        # → npm run hygiene
/commit feat    # → npm run quality:pre-commit && git commit
/todo list      # → npm run todo:list

Migration Strategy ​

Phase 1: High-Value Commands ​

Migrate commands with most lines first:

  1. /maintainability (458 → 42 lines)
  2. /issue (442 → ~40 lines)
  3. /version-tag (437 → ~40 lines)

Phase 2: Core Workflow ​

Migrate frequently-used commands:

  1. /hygiene (264 → 30 lines)
  2. /commit (296 → 33 lines)
  3. /todo (305 → 43 lines)

Phase 3: Remaining Commands ​

Complete migration for all commands.

NPM Script Categories ​

Core Workflow ​

json
"hygiene": "Full health check",
"todo:list": "Show tasks",
"commit:check": "Pre-commit validation"

Quality Checks ​

json
"lint:check": "Code style validation",
"test:check": "Run test suite",
"build:check": "Build verification"

Git Operations ​

json
"git:status:summary": "Quick git status",
"git:check:staged": "Verify staged files",
"git:unpushed": "Count unpushed commits"

Maintainability ​

json
"maintain:files": "Count code files",
"maintain:debt": "Find TODO/FIXME",
"maintain:largest": "Identify large files"

Best Practices ​

1. Script Naming Convention ​

  • Use colons for namespacing: category:action
  • Keep names descriptive but concise
  • Group related scripts together

2. Error Handling ​

  • Use || echo 'message' for graceful failures
  • Provide helpful error messages
  • Return appropriate exit codes

3. Silent Flags ​

  • Use --silent to reduce noise
  • Pipe to /dev/null when appropriate
  • Keep output focused and relevant

4. Composition ​

  • Build complex scripts from simple ones
  • Use && for sequential execution
  • Create :quick and :full variants

Examples ​

Minimal Hygiene Command ​

markdown
---
allowed-tools: [Bash]
description: Project health check
---

# Project Hygiene Check

\`\`\`bash
npm run hygiene:full --silent
\`\`\`

Minimal Commit Command ​

markdown
---
allowed-tools: [Bash]
description: Quality-checked commit
---

# Quality Commit

\`\`\`bash
npm run quality:pre-commit --silent || exit 1
git commit -m "$1: $2"
\`\`\`

Measuring Success ​

Token Metrics ​

  • Original: ~5,700 lines total
  • Optimized: ~700 lines total
  • Savings: 87% reduction

Performance Metrics ​

  • Faster command execution
  • Reduced Claude response time
  • Lower API costs

Developer Experience ​

  • Scripts work standalone
  • Easy to test and debug
  • Familiar npm ecosystem

Future Optimizations ​

1. Node.js Scripts ​

For complex logic, use JavaScript:

javascript
// scripts/maintainability.js
#!/usr/bin/env node
const score = calculateMaintainability();
console.log(`Score: ${score}/100`);

2. Configuration Files ​

Move thresholds to config:

json
// .claude-config.json
{
  "lint": { "maxWarnings": 10 },
  "test": { "minCoverage": 80 }
}

3. Command Aliases ​

Create ultra-minimal aliases:

markdown
# h.md (alias for hygiene)
\`\`\`bash
npm run hygiene
\`\`\`

Conclusion ​

By delegating to npm scripts, we achieve:

  • 87% token reduction on average
  • Better performance through native execution
  • Improved maintainability with centralized logic
  • Cross-platform compatibility via npm

This architecture represents best practices for token-efficient Claude Code command development.

A hands-on learning project exploring LLM internals