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 commandsdesign_assistant.py: Core design assistant using app-designer subagentconversation_evaluator.py: Evaluates conversation quality using conversation-evaluator subagentsimulator.py: Automated simulation system for testing design scenarioslearning_system.py: Continuous learning from evaluation resultssave_claude_conversation.py: Saves conversation history for future reference
Want to Help?
Our Philosophy: Every change should make things simpler, not more complicated.
- Fork the repository on GitHub
- Make a small, focused improvement
- Test that your change works
- Clean up your code with:
uv run ruff check --fix . - 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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file claude_code_designer-0.3.0.tar.gz.
File metadata
- Download URL: claude_code_designer-0.3.0.tar.gz
- Upload date:
- Size: 82.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.8.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
157855055bdcfd9d32cf0f70b95a665c08b5405d3bb5fba3dc8c1990c1ed518f
|
|
| MD5 |
819f87f1de172b8e701278afbcd14919
|
|
| BLAKE2b-256 |
4cd5249d2ac55b7b07d147021d51b22a7771e48ceff450726438ed0196aa305c
|
File details
Details for the file claude_code_designer-0.3.0-py3-none-any.whl.
File metadata
- Download URL: claude_code_designer-0.3.0-py3-none-any.whl
- Upload date:
- Size: 24.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.8.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c1bdb8a31676810aa9b785dde8e19e77fc20f2dac083e1d397566a091d0072f8
|
|
| MD5 |
1dd96ce8f165bf2a017bfc38a10e3cfd
|
|
| BLAKE2b-256 |
118ba75d95369ab2b5547465fcd23fd9e683c915b9eb8ffaa8788b9bfc53d549
|