270 Commits

Author SHA1 Message Date
Dani 92fdaa1f87 feat: add Python scripts for all Git Flow hooks
- Created conventional-commits.py for commit message validation
- Created prevent-direct-push.py for protected branch enforcement
- Updated all hook JSONs to use Python scripts with proper JSON output
- All hooks now use permissionDecision: "deny" for proper blocking

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-01 20:02:20 -04:00
Dani 7b320aa371 chore: regenerate components.json with latest changes
Updated components catalog with new Git Flow hook and Python script support.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-01 19:47:56 -04:00
Dani 5ce27ad38c fix: use currentTargetDir instead of projectDir for hook files
- Fixed ReferenceError where projectDir was not defined
- Changed to use currentTargetDir which is properly scoped
- Removed debug console.log statements
- Cleaned up Python file download logging

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-01 19:45:59 -04:00
Dani a042fdd70e feat: add automatic Python script download for all hooks
- Modified installIndividualHook to detect and download .py files for ANY hook
- Added automatic installation of Python scripts to .claude/hooks/
- Python files get executable permissions (0o755)
- Created validate-branch-name.py for proper Git Flow branch validation
- Hook validation now uses JSON output with permissionDecision

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-01 19:41:51 -04:00
Dani fe79e89024 fix(statusline): remove trailing quotes in git-flow-status display
Fixed statusline command to properly display Git Flow status without
trailing empty quotes. Changed from subshell construction to simple
if-else conditional for cleaner output.

Before: 🌿 feature/test ●2 ✚2 ""
After:  🌿 feature/test ●2 ✚2 | 🎯 → develop

Changes:
- Updated git-flow-status.json statusline command
- Updated git-flow-settings.json statusline command
- Regenerated components.json catalog

🤖 Generated with Claude Code

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-01 15:15:43 -04:00
Dani b7c9eb1990 update agents 2025-10-01 14:49:11 -04:00
Dani e191239ac4 update to claude sonnet 4.5 2025-09-29 16:45:15 -04:00
Dani 0618618287 fix vertex conf 2025-09-27 12:56:15 -04:00
Dani 22c2aad0d7 chore: sync project files and configurations
- Update local settings and configurations
- Add Vertex AI Claude Code integration blog post
- Sync analytics components and documentation
- Remove test data files and update configurations

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-24 11:24:34 -04:00
Dani 6bff5036fd chore: bump version to 1.21.11 2025-09-24 11:22:27 -04:00
Dani 346ce3e2cb feat(chats-mobile): add resume conversation modal and GitHub button
- Add elegant modal for resume conversation functionality
- Modal shows claude --resume command with copy functionality
- Center Resume button in chat view header
- Add centered GitHub star button in main chat header
- Improve responsive design with three-column header layout
- Enhanced user experience with visual feedback on copy actions

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-24 11:21:22 -04:00
Dani b7c2de7776 neon database agents and settings added 2025-09-20 12:39:56 -04:00
Dani 8a292aacb6 add AGENTS.md fallback logic for Claude Code 2025-09-19 19:36:35 -04:00
Dani a0454fe436 add AGENTS.md and agents-md-loader.json, update settings.local.json 2025-09-19 19:27:28 -04:00
Dani e429063c8b update components and agents download counts in docs/components.json 2025-09-19 11:14:46 -04:00
Andre Landgraf 32bb96ebfe neon expert agent (#87) 2025-09-18 14:24:38 -04:00
Dani 017050c729 add mcps 2025-09-18 09:10:34 -04:00
Dani aa8212cf73 fix links 2025-09-15 15:17:14 -04:00
Dani fc2396d3fc update hook 2025-09-12 15:37:54 -04:00
Book Danny e6bf6cf495 Update agent-expert.md (#86) 2025-09-11 10:05:42 -04:00
Dani a3c0187e55 feat: component page improvements and SEO-friendly URLs
• Complete component page implementation with cart functionality
• Clean component names (remove .md/.json extensions in display)
• SEO-friendly URLs: /component/type/name format
• Local/production URL detection for development compatibility
• Improved header actions positioning and responsive design
• API keys setup (Anthropic + E2B) for sandbox execution
• Enhanced cart functionality with clean path/name display
• Share dropdown positioning fix (opens upward)
• Compact back navigation styling

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-10 17:07:04 -04:00
Dani 840138efe4 Add real-time streaming output to E2B sandbox execution
- Implement on_stdout/on_stderr callbacks for live output streaming
- Add progress indicators during long operations
- Remove unnecessary warning message for aitmpl.com API
- Create API endpoint for agents list at /docs/api/agents.json
- Update getAvailableAgentsFromGitHub to use aitmpl.com API fallback
- Improve user experience with visual feedback during execution
- Version bump to 1.21.5

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-07 17:54:49 -04:00
Dani 4a8f09faff agent.json api 2025-09-07 17:39:35 -04:00
Dani 2b94c4a8f1 Update E2B execution time expectation message
- Change from '30-60 seconds' to 'a few minutes'
- More accurate for complex prompts
- Sets better user expectations

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-07 17:18:20 -04:00
Dani 22defa982f Simplify E2B loading indicator - remove animation complexity
- Remove time and threading imports that caused errors
- Use simple static spinner icon instead of animation
- Clean and simple loading message
- Avoids 'time not associated with value' error

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-07 17:13:04 -04:00
Dani 0795392d91 Add animated loading indication for E2B execution
- Import time and threading modules for animations
- Add animated dots (Processing...) before execution
- Show brief animation to indicate activity
- Better visual feedback during synchronous operations

Note: Full spinner not possible during blocking E2B execution

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-07 17:07:32 -04:00
Dani df8cc60513 Improve E2B execution loading message
- Replace misleading 'Real-time output will appear' message
- Add clear 'Executing... Please wait' message
- Include time expectation (30-60 seconds)
- Add visual progress indicator placeholder
- Better user feedback during synchronous execution

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-07 16:57:17 -04:00
Dani 17f1930f27 Allow empty agent selection in E2B sandbox
- Remove validation that forced agent selection
- Allow users to press Enter without selecting any agents
- Continue with default Claude when no agents selected
- Improves UX by not forcing unnecessary selections

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-07 16:51:42 -04:00
Dani cda97be9f6 Fix E2B command display to show actual user prompt
- Display the actual user prompt in the command output
- Keep enhanced prompt for internal execution
- Truncate long prompts to 100 characters for display
- Maintains prompt engineering while improving user visibility

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-07 16:48:05 -04:00
Dani eeb7d48241 Fix agent selection to use local components.json cache
- Use local docs/components.json file when available (600+ agents)
- Fallback to GitHub API only if local file not found
- Handle GitHub API rate limits gracefully
- Provide comprehensive fallback agent list
- Show message when loading from local cache

This fixes the issue where only 3 agents were showing due to API rate limits

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-07 16:40:37 -04:00
Dani 82ed16aba0 Add prompt engineering to E2B sandbox for better code generation
- Create enhanced prompts with clear instructions for Claude Code
- Include agent context when agents are specified
- Instruct Claude to execute requests immediately and create files
- Parse agent names from components string correctly
- Show agent usage in execution logs

This ensures Claude generates actual code instead of just acknowledging requests

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-07 16:36:51 -04:00
Dani 49d37e64cb Enable multiple agent selection for E2B sandbox
- Change from single list to checkbox for multiple agent selection
- Support comma-separated agent values (folder/agent-name format)
- Add confirmation prompt before agent selection
- Display multiple agents properly in execution summary
- Maintain full path format for agent references

Users can now select multiple agents with SPACE and confirm with ENTER

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-07 16:28:30 -04:00
Dani 98ecceeed3 Add cloud sandbox execution loading message
- Add visual separator and loading message after permissions check
- Show 'Executing Claude Code in secure cloud sandbox' message
- Include status indicators for processing, isolation, and output
- Improve user feedback during execution wait time

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-07 16:25:32 -04:00
Dani 7fdc2e7782 Fix E2B sandbox file download location to user's current directory
- Change Python script execution cwd from sandboxDir to targetDir
- Files now download directly to user's current working directory
- Update message to show exact download path
- Maintains pip install in .claude/sandbox for dependencies

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-07 15:44:35 -04:00
Dani 6f56132b0e Separate --studio and --sandbox commands: make --sandbox CLI-only with interactive agent selection
- Keep --studio as separate web interface command for Claude Code Studio
- Make --sandbox e2b pure CLI experience without opening web interface
- Add interactive agent selection when --agent not provided
- Agent list fetched from GitHub with option to continue without agent
- Maintain existing prompt collection and Y/n confirmation flow
- Real-time log display and folder download already working

This ensures --sandbox e2b follows the CLI workflow:
1. Check/download agents if missing
2. Prompt for input if --prompt not provided
3. Confirm E2B execution with Y/n
4. Execute and show logs
5. Download folder when complete

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-07 15:39:15 -04:00
Dani 846f42241d Transform to Claude Code Studio: complete local + cloud execution interface
✨ FEATURES:
- Rename from AITMPL Cloud Agent to Claude Code Studio
- Add --studio command to launch unified interface
- Support both Local Machine and E2B Cloud execution modes
- Interactive mode toggle with visual indicators
- Smart notices (API keys for cloud, CLI check for local)

🚀 EXECUTION MODES:
- Local: Execute Claude Code directly on user's machine
- Cloud: Execute in E2B isolated sandbox environment

🎨 UI IMPROVEMENTS:
- Clean mode selector with icons and hover effects
- Context-aware notices (show only relevant info)
- Better error handling for missing Claude Code CLI
- Terminal-styled interface consistent with brand

🔧 CLI INTEGRATION:
- npx claude-code-templates@latest --studio (launch interface)
- npx claude-code-templates@latest --sandbox e2b (direct cloud)
- Backward compatibility maintained

💡 USER EXPERIENCE:
- Default to Local mode (no API keys needed)
- Switch to Cloud for isolated testing
- Real-time task management and progress tracking
- Automatic environment detection and setup guidance
2025-09-07 11:20:32 -04:00
Dani 1caddd7fe6 Fix E2B file download location: use current working directory instead of relative paths
- Use os.getcwd() to get the directory where command was executed
- Download files to sandbox-{id} folder in user's current directory
- Remove hardcoded relative path assumptions (../../)
- Add debugging output to show current working directory
- Ensures files are downloaded where user expects them
2025-09-07 11:10:26 -04:00
Dani fa0cc5ea07 Fix .env loading: load environment variables from user's project directory
- Load .env file from current working directory (where command is executed)
- Pass environment variables correctly to Python E2B launcher
- Show API key status on server startup with clear feedback
- Ensure E2B and Anthropic API keys are loaded from user's project
- Better debugging output for environment variable loading
2025-09-06 20:23:07 -04:00
Dani 149de06cd4 Improve AITMPL Cloud Agent UX: add API keys notice and better error handling
- Add prominent API keys notice with setup instructions
- Include direct links to get E2B and Anthropic API keys
- Improve error handling to detect missing API key errors
- Show helpful error messages for API key configuration
- Better user guidance for .env file setup
2025-09-06 20:15:14 -04:00
Dani 3f97e11efd Fix sandbox server routing: serve sandbox interface at root instead of docs index.html 2025-09-06 20:12:20 -04:00
Dani 4d911106d7 Fix sandbox server: remove cors dependency, use native CORS middleware 2025-09-06 20:09:15 -04:00
Dani 777b3db79e Add AITMPL Cloud Agent interface for E2B sandbox management
- Create web interface for managing E2B sandbox tasks
- Add terminal-styled UI matching docs/index.html design
- Implement real-time task polling and progress tracking
- Add sandbox server with Express.js backend
- Support launching interface with --sandbox e2b command
- Include running and completed task sections
- Real-time output streaming from E2B executions
- Auto-resize textarea and keyboard shortcuts
2025-09-06 20:07:23 -04:00
Dani e0accf5e7e Fix E2B sandbox file downloads to create project folder in root directory 2025-09-06 19:57:03 -04:00
Dani 68c4a464ac Fix 'Assignment to constant variable' error in executeSandbox function 2025-09-06 19:50:01 -04:00
Dani 2c276c6fa1 Remove default placeholder from E2B sandbox prompt input 2025-09-06 19:41:55 -04:00
Dani f8a815a866 Change E2B sandbox prompt from editor to simple text input 2025-09-06 19:38:46 -04:00
Dani f17debf682 Add interactive prompt input for E2B sandbox when --prompt not provided
Features:
✅ Interactive Project Requirements Editor:
- Opens when --prompt parameter is not provided in sandbox mode
- Uses inquirer editor type for multi-line text input
- Comprehensive default template with structured guidance
- Input validation (minimum 10 characters)

✅ Enhanced User Experience:
- Clear instructions on how to provide detailed requirements
- Pre-filled template with examples and categories:
  * Feature descriptions
  * Technical requirements (tech stack, styling)
  * Design requirements (colors, layout, UI style)
- Real example at the bottom for reference

✅ Smart Flow:
- Only triggers when prompt is missing in sandbox mode
- Captures user input and continues with normal sandbox execution
- Maintains all existing functionality when --prompt is provided

This allows users to run sandbox mode without specifying --prompt
and get a guided experience to describe their project requirements.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-06 19:31:24 -04:00
Dani 49513876fd Fix E2B sandbox to download files directly to project root
Changes:
- E2B launcher now downloads files to ./ (project root) instead of ./e2b-outputs/
- Updated confirmation dialog to show "Files will be downloaded to project root directory"
- Updated modal feature text to "Files downloaded to project root"
- Removed timestamp folder organization for simpler file management

This ensures generated files are immediately available in the project root
where users expect them, without needing to navigate to subfolders.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-06 15:56:38 -04:00
Dani d6c81ff7c5 Add E2B sandbox execution confirmation and ESC cancellation
Features added:
✅ Sandbox Execution Confirmation:
- Beautiful formatted confirmation dialog with execution details
- Shows agent name, truncated prompt, provider (E2B Cloud)
- Displays execution info: real-time logs, file downloads, timeout
- Clear ESC cancellation instructions

✅ ESC Key Cancellation:
- Real-time ESC key detection during sandbox execution
- Graceful process termination with SIGTERM
- Proper stdin cleanup and raw mode handling
- User-friendly cancellation messages

✅ Enhanced User Experience:
- Informative confirmation dialog before execution
- Real-time execution status and instructions
- Safe process cancellation without hanging
- Clear feedback for all execution states

This provides users with full control over sandbox execution and clear
visibility into what will happen during the E2B sandbox process.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-06 15:46:14 -04:00
Dani 73ca5836e5 Fix unwanted prompt confirmation dialog when using --sandbox
Problem: When using --sandbox with --prompt, the system was showing
"Do you want to execute this prompt in Claude Code?" confirmation dialog
after installing the agent, even though sandbox mode should handle the
prompt execution directly.

Root Cause: The issue existed since the beginning. When --sandbox installs
an agent internally, the installIndividualComponents() function was also
checking for options.prompt and calling handlePromptExecution(), creating
a duplicate prompt handling path.

Solution: Added !options.sandbox condition to all three locations where
handlePromptExecution() is called:
1. Main template installation flow (line 372)
2. Individual components installation (line 1454)
3. Workflow components installation (line 1623)

This ensures prompt execution only happens in regular mode, not sandbox mode.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-06 14:21:05 -04:00