Skip to main content

Interactive CLI for designing applications using Claude Code SDK

Project description

Claude Code Designer

Interactive AI-powered design assistant using Claude Code SDK for application and feature design guidance

Features

  • Interactive Design Assistant: AI-powered application and feature design guidance using app-designer subagent
  • Conversation Evaluation: Analyze design conversation quality using conversation-evaluator subagent
  • Automated Simulation: Run automated design sessions with synthetic scenarios for testing
  • Continuous Learning: Learn from evaluation results to improve future interactions
  • Clean Terminal Interface: Straightforward CLI without unnecessary complexity
  • Conversation History: Automatically saves design sessions for future reference
  • Programmatic API: Use design assistant functionality from other Python scripts

Installation

Prerequisites

  • Python 3.11 or higher
  • Node.js (for Claude Code CLI)
  • Claude Code CLI: npm install -g @anthropic-ai/claude-code

Install from PyPI

pip install claude-code-designer

Install from Source

git clone https://github.com/anthropics/claude-code-designer
cd claude-code-designer
uv sync --dev

Usage

Design Assistant

Get AI-powered help designing applications and features:

# Design a new application interactively
uv run python -m claude_code_designer.cli app

# Design a new feature
uv run python -m claude_code_designer.cli feature

# Non-interactive mode with parameters
uv run python -m claude_code_designer.cli app --name "MyApp" --type web --non-interactive

# List saved conversation history
uv run python -m claude_code_designer.cli list-conversations

Conversation Evaluation

Analyze and evaluate design conversation quality:

# Evaluate all conversations
uv run python -m claude_code_designer.cli evaluate

# Evaluate a specific conversation
uv run python -m claude_code_designer.cli evaluate --conversation-file conversation_20250106.json

# Custom directories
uv run python -m claude_code_designer.cli evaluate --conversation-dir ./my-conversations --evaluation-dir ./my-evaluations

Simulation and Learning

Run automated design simulations with continuous learning:

# Run simulation cycles with learning enabled
uv run python -m claude_code_designer.cli simulate --cycles 5 --enable-learning

# Generate app-only or feature-only scenarios
uv run python -m claude_code_designer.cli simulate --type app --cycles 3

# Custom simulation settings
uv run python -m claude_code_designer.cli simulate --delay 3.0 --conversation-dir ./sim-conversations

# Manually trigger learning from evaluations
uv run python -m claude_code_designer.cli learn --evaluation-dir ./simulation_evaluations

# View learning system statistics
uv run python -m claude_code_designer.cli knowledge-stats

Programmatic Usage

Use the design assistant and other components from Python scripts:

from claude_code_designer import DesignAssistant, ConversationEvaluator
import asyncio

async def design_my_app():
    # Design a new application
    assistant = DesignAssistant("./conversations")
    conversation = await assistant.design_application(
        project_name="TaskTracker Pro",
        project_type="web",
        interactive=False,
        max_turns=10
    )
    print(f"Design completed with {conversation['output']['message_count']} messages")
    
    # Evaluate the conversation quality
    evaluator = ConversationEvaluator("./conversations", "./evaluations")
    evaluation = await evaluator.evaluate_conversation(conversation['file_path'])
    print(f"Quality score: {evaluation['scores']['overall']}/10")

asyncio.run(design_my_app())

See the examples/ directory for more usage examples including simulation and learning system integration.

What It Looks Like

$ uv run python -m claude_code_designer.cli app

🚀 Application Design Assistant

What's the name of your project? TaskTracker Pro
What type of application are you building? [web/cli/api/mobile/desktop/library/other] (web): web

Starting app-designer design session...
Starting conversation with prompt: I need comprehensive application design assistance...
Received message: TextMessage
Received message: ToolUseMessage
...

✅ Design session completed with 8 messages
Conversation saved to: ./conversations/20250106_123456_I_need_comprehensive_application.json

Configuration

Claude Code Designer follows your existing Claude Code CLI configuration. Ensure you're authenticated:

claude auth login

For Developers

Setting Up Your Dev Environment

# Get the source code
git clone https://github.com/anthropics/claude-code-designer
cd claude-code-designer

# Install everything you need
uv sync --dev

Testing Your Changes

# Run the test suite
uv run pytest

Keeping Code Clean

# Check for issues and fix formatting
uv run ruff check .
uv run ruff format .

Installing Your Local Version

# Install your development version
uv pip install -e .

How It's Built

  • cli.py: Command-line interface with all CLI commands
  • design_assistant.py: Core design assistant using app-designer subagent
  • conversation_evaluator.py: Evaluates conversation quality using conversation-evaluator subagent
  • simulator.py: Automated simulation system for testing design scenarios
  • learning_system.py: Continuous learning from evaluation results
  • save_claude_conversation.py: Saves conversation history for future reference

Want to Help?

Our Philosophy: Every change should make things simpler, not more complicated.

  1. Fork the repository on GitHub
  2. Make a small, focused improvement
  3. Test that your change works
  4. Clean up your code with: uv run ruff check --fix .
  5. Send us a pull request

What We Value

  • Simple Solutions: We prefer code that's easy to understand over code that's clever
  • Focused Features: We say "no" to most new features to keep things simple
  • Easy Maintenance: Every line of code needs to be maintained forever
  • Keep It Simple: Simple code beats fancy design patterns every time

Technical Requirements

  • Python 3.11+ - The programming language we're built on
  • Claude Code SDK - How we talk to Claude AI
  • Click 8.1+ - Makes our command-line interface nice to use
  • Rich 13.0+ - Adds colors and formatting to the terminal
  • Pydantic 2.0+ - Helps us validate data properly

License

MIT License - see LICENSE file for details.

Need Help?

  • Found a Bug? Tell us about it on GitHub Issues
  • Want a Feature? Suggest it on GitHub (but remember, we keep things simple!)
  • Questions? Check out PRD.md for project details or CLAUDE.md for technical info

Version History

v0.1.0 (First Release)

  • Interactive design assistant for applications and features
  • Conversation history saving and management
  • Programmatic API for integration with other tools
  • Clean, simple interface that doesn't get in your way
  • Reliable integration with Claude AI

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

claude_code_designer-0.3.1.tar.gz (82.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

claude_code_designer-0.3.1-py3-none-any.whl (24.3 kB view details)

Uploaded Python 3

File details

Details for the file claude_code_designer-0.3.1.tar.gz.

File metadata

File hashes

Hashes for claude_code_designer-0.3.1.tar.gz
Algorithm Hash digest
SHA256 468fc60f5d552ad9480e83baff71f7f920251db6788cab16320ea8beda501d6a
MD5 c78dbf3f3097ed4a4eae11c74d293b13
BLAKE2b-256 8588b9202fd0a2f4f45e3634fd5f14430745006879bb5233f60cb99d261603df

See more details on using hashes here.

File details

Details for the file claude_code_designer-0.3.1-py3-none-any.whl.

File metadata

File hashes

Hashes for claude_code_designer-0.3.1-py3-none-any.whl
Algorithm Hash digest
SHA256 970452d5a956da686f2559094bd598f9b843b656511ab26e8648a36bfd091272
MD5 d753724f6ded628a18d179d2782a1689
BLAKE2b-256 1a8ccad7d3400530ac34b8db303ef833f0c4f40bfb90e12ad8f784293f66d16a

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page