π AI-driven Git management platform powered by Claude and modern web technologies - Build, manage, and deploy with AI assistance.
π§ Latest Update: Comprehensive help system with Japanese/English documentation and enhanced UI!
- β¨ Features
- π οΈ Tech Stack
- π Prerequisites
- π Quick Start
- π Documentation
- π§ System Management
- π¬ Claude Integration
- π Database Management
- π Usage Guide
- ποΈ Project Structure
- π API Reference
- π» Development
- π Troubleshooting
- π€ Contributing
- π License
- πΈ Screenshots
Main application interfaces with light theme design
Main dashboard with system status, Claude AI progress, and task overview
Repository list with status indicators, stats, and quick actions
Detailed repository view with Git operations and file management
Task workflow with status filtering, progress tracking, and priority management
Real-time command tracking with repository selection and session monitoring
Claude CLI interface for AI-powered development
AI configuration and Claude integration settings
Technical architecture and integration flows
Complete architecture diagram showing how Claude CLI integrates with GitCraft AI Studio
Step-by-step workflow for Claude integration: Regular work β Recap β Commit
Real-time command tracking flow from Claude CLI to web interface
Automatic Git operations triggered by Claude commands
Available Claude CLI tools and their integration with GitCraft
Common troubleshooting steps and solutions for Claude integration
- π€ AI-Powered Development: Automated code generation, review, and refactoring with Claude AI (4 models)
- π Smart Task Management: Complete workflow (TODO β IN_PROGRESS β IN_REVIEW β APPROVED β COMPLETED)
- ποΈ Repository Management: GitHub integration with local repository support and path editing
- π Secure Authentication: Email/password with NextAuth.js and password reset
- π Tech Stack Templates: Create and share technology stack configurations
- π Real-time Collaboration: WebSocket-powered editing with cursor tracking
- πΏ Smart Git Operations: Automatic branch creation, merging, and push
- π Comprehensive Help System: Built-in documentation with search and multi-language support
- π Notifications (Under Development): Desktop and sound notifications for task updates
- π Multi-language Support: Complete Japanese & English interface
- π Advanced Help System: Searchable documentation with 10 help sections including:
- Getting Started guide with step-by-step onboarding
- Installation & Setup guide for Claude Code and GitCraft
- Repository Management with private repository access
- Troubleshooting with 6 common issues and solutions
- Task Management and AI integration guides
- π± Responsive Design: Modern UI with mobile-first approach
- π¨ Theme Support: Light/Dark/System theme switching
- π§ Settings Management: Comprehensive configuration system
- π Command Tracking: Real-time monitoring of Claude CLI commands
- πΎ Conversation Auto-save: Automatic saving with AI-generated summaries
- π Session Browser: Search and browse past Claude sessions with statistics
- π Auto-commit/Push: Automatic Git operations triggered by ANY command (3-second delay)
- π Session Analytics: Track Claude usage patterns and productivity
- π― Task Creation: Convert Claude sessions directly into tasks
- π§ Hook System: Custom tool execution hooks for automation
- π Include Untracked: Automatically commits ALL files including untracked ones
- π Simplified Workflow: Use "recap" for summaries and "commit" for execution
- Code Generation: Context-aware implementation from descriptions
- Code Review: AI-powered reviews with actionable suggestions
- Smart Commits: Auto-generate conventional commit messages
- Code Refactoring: Optimize for performance and readability
- Code Explanation: Interactive explanations with complexity control
- Framework: Next.js 15.2+, React 19.1, TypeScript 5.8
- UI Components: shadcn/ui, Radix UI, Lucide Icons
- Styling: Tailwind CSS 4.1, CSS Modules
- State Management: React Context, tRPC Query
- Real-time: WebSocket client, Server-Sent Events
- Internationalization: next-intl for multi-language support
- Code Editor: Monaco Editor with syntax highlighting
- API: tRPC 11.1, Express middleware
- Database: PostgreSQL 16, Prisma ORM 5.22
- Authentication: NextAuth.js, bcrypt
- Real-time: WebSocket server, Chokidar for file watching
- Process Management: PM2 for persistent services
- AI: Claude CLI (development) / Anthropic API (production)
- Git: simple-git, isomorphic-git
- Build Tools: Turborepo, pnpm workspaces
- Development: TypeScript 5.8, ESLint, Prettier
- Node.js 22.17.0+ (use nvm recommended)
- pnpm 10.13.0+ (
npm install -g pnpm) - Git 2.34+
- PostgreSQL 16+
- Claude CLI (for development mode)
- Anthropic API Key (for production)
- PM2 (for persistent services and Claude tracking)
# Install PM2 globally sudo npm install -g pm2 # Or without sudo using npx npx pm2
- GitHub Personal Access Token (for private repos)
git clone https://github.com/cruzy-jpn/gitcraft-ai-studio.git
cd GitCraft-AI-Studio-develop# Option 1: Using npm with sudo
sudo npm install -g pnpm
# Option 2: Using standalone installer (no sudo required)
curl -fsSL https://get.pnpm.io/install.sh | sh -
# Option 3: Using Corepack (Node.js 16.13+)
corepack enable
corepack prepare pnpm@latest --activate# Initialize everything automatically
./init.shThis will:
- β Install all dependencies
- β Set up PostgreSQL database
- β Create environment files with symlinks
- β Initialize database schema
- β Initialize empty database (no default users)
- β Set up required directories
Note: The project now uses a single .env file in the root directory. The init script will create symlinks from apps/api/.env and apps/web/.env.local to the root .env file.
Important: All environment variables are managed in the root .env file. The application uses these variables for paths:
# Project root directory (defaults to current working directory)
GITCRAFT_PROJECT_ROOT=/path/to/your/project
# Log directory for Claude commands (defaults to project root)
GITCRAFT_LOG_DIR=/path/to/log/directory
# Session directory for Claude sessions (defaults to project root)
GITCRAFT_SESSION_DIR=/path/to/session/directoryNote: Some shell scripts (claude-wrapper.sh) may need manual configuration. Use claude-wrapper-template.sh as a starting point.
# Recommended: Start everything with one command
./start-all.sh
# This starts:
# - API server (port 4000)
# - Web server (port 3000)
# - Claude command tracking (integrated in API)
# - Creates necessary log filesOpen your browser and navigate to:
- π Main App: http://localhost:3000
- π Help System: http://localhost:3000/help
- π€ Claude Integration: http://localhost:3000/claude-integration
- ποΈ Database GUI:
npx prisma studio(from apps/api)
# Check system health
./check-system.shGitCraft AI Studio includes a comprehensive help system accessible at /help with:
- Real-time search across all documentation
- Instant filtering of help topics
- Keyboard shortcuts for quick navigation
- Getting Started - New user onboarding with 4-step guide
- Installation & Setup - Claude Code and GitCraft installation
- Repository Management - GitHub integration and private repository access
- Task Management - AI-powered task workflow (coming soon)
- Claude AI Integration - AI development features (coming soon)
- Git Operations - Version control and collaboration (coming soon)
- Troubleshooting - 6 common issues with solutions
- Settings & Configuration - Workspace customization (coming soon)
- Collaboration - Real-time development features (coming soon)
- API Reference - Developer documentation (coming soon)
- Complete English documentation
- Full Japanese translations
- Language switching via settings
- Localized examples and code snippets
- Copy-to-clipboard code blocks
- Expandable troubleshooting sections with severity indicators
- External links to official documentation
- Quick navigation between related topics
- System overview and feature introduction
- 4-step onboarding process with visual indicators
- Next steps recommendations
- Prerequisites with version requirements
- Claude Code CLI installation guide
- GitCraft setup with environment configuration
- Database setup instructions for multiple platforms
- Comprehensive guide to adding repositories
- Private repository access with GitHub tokens
- Repository management operations
- Best practices and security considerations
- 6 common issues with step-by-step solutions:
- Repository has no initial commit
- Repository path mismatch
- Claude AI authentication failed
- Database connection failed
- Git push operation failed
- Task execution failed
- Quick links for common problems
- Additional resources and external documentation
If you need to set up PostgreSQL manually:
# Ubuntu/Debian
sudo apt update
sudo apt install -y postgresql postgresql-contrib
# macOS
brew install postgresql
brew services start postgresql
# Create database and user
sudo -u postgres psql << EOF
CREATE USER gitcraft WITH PASSWORD 'gitcraft_dev_2025';
CREATE DATABASE gitcraft_studio OWNER gitcraft;
GRANT ALL PRIVILEGES ON DATABASE gitcraft_studio TO gitcraft;
ALTER USER gitcraft CREATEDB;
EOFFor other methods (Docker, cloud services), see PostgreSQL Setup Guide.
# Start all services
./start-all.sh
# Stop all services
./stop-all.sh
# Check system health
./check-system.shThe start-all.sh script manages:
- API Server: Backend services on port 4000
- Web Server: Frontend on port 3000
- Claude Tracker: PM2 process for command tracking
- Health Monitoring: Continuous system checks
# View API logs
tail -f apps/api/dev.log
# View Web logs
tail -f apps/web/dev.log
# View Claude tracker logs
pm2 logs claude-track
# View all PM2 processes
pm2 status- Create Task: Define what needs to be built with title and description
- AI Implementation: Claude generates code based on task description and tech stack
- Source Review: Review generated code and request modifications if needed
- Approval: Approve the implementation when satisfied
- Merge to Main: Merge approved code to main branch with automatic commit and push
-
Add Repository: Click "Add Repository" and provide the clone URL
-
Directory Name: Automatically extracted from URL, customizable before cloning
-
Clone Path: Repositories are cloned to
/GitCraft-AI-Studio-develop/{repository-name} -
GitHub Integration: Use personal access tokens for private repositories:
https://<TOKEN>@github.com/username/repository.gitβ οΈ Important: We strongly recommend using private repositories on GitHub to protect your code and intellectual property.π Note for Empty GitHub Repositories: If you've created a new repository on GitHub without any commits:
# First, initialize the repository locally echo "# your-repository-name" >> README.md git init git add README.md git commit -m "first commit" git branch -M main git remote add origin https://github.com/username/your-repository-name.git git push -u origin main # Then add it to GitCraft AI Studio
-
Branch Management: Automatic branch creation for each task
-
Merge Operations: One-click merge to main with automatic push
-
Path Management: Update repository paths in settings if location changes
- Collaborative Editing: Multiple users can edit files simultaneously
- Cursor Tracking: See other users' cursor positions in real-time
- Typing Indicators: Visual indicators when other users are typing
- Room Management: Repository-based collaboration rooms
GitCraft-AI-Studio-develop/
βββ apps/
β βββ web/ # Next.js frontend application
β β βββ app/ # App router pages
β β β βββ [locale]/ # Internationalized routes
β β β βββ help/ # Help system pages
β β β β βββ page.tsx # Main help landing page
β β β β βββ getting-started/
β β β β βββ installation/
β β β β βββ repositories/
β β β β βββ troubleshooting/
β β β βββ settings/ # Settings pages
β β βββ components/ # React components
β β β βββ claude/ # Claude integration components
β β β βββ ui/ # UI components (shadcn)
β β β βββ layout/ # Layout components
β β βββ lib/ # Utilities and hooks
β β β βββ i18n/ # Internationalization
β β β βββ translations/ # Translation files
β β β βββ en.json # English translations
β β β βββ ja.json # Japanese translations
β β βββ .env.local # Web app environment
β βββ api/ # Backend API server
β βββ src/
β β βββ api/ # tRPC routers
β β β βββ routers/ # API endpoints
β β βββ services/ # Business logic
β β βββ db/ # Database client
β βββ prisma/ # Database schema
β βββ scripts/ # Utility scripts
βββ packages/
β βββ shared/ # Shared types and schemas
βββ .claude-sessions/ # Claude conversation storage
βββ .claude-instructions # Claude workflow configuration
βββ docs/ # Documentation
βββ scripts/ # System management scripts
β βββ init.sh # Project initialization
β βββ cleanup.sh # Cleanup and reset
β βββ start-all.sh # Start all services
β βββ stop-all.sh # Stop all services
β βββ check-system.sh # System health check
βββ git-repositories/ # Cloned repositories
auth.login- User login with email/passwordauth.register- Create new user accountauth.logout- End user sessionauth.getSession- Get current user sessionauth.updateProfile- Update user profile
tasks.list- List all tasks with filteringtasks.create- Create new tasktasks.update- Update task status/detailstasks.delete- Delete tasktasks.getById- Get single task detailstasks.updateStatus- Change task workflow status
repositories.list- List user repositoriesrepositories.create- Add new repositoryrepositories.clone- Clone remote repositoryrepositories.delete- Remove repositoryrepositories.updatePath- Update repository local pathrepositories.getBranches- List repository branchesrepositories.createBranch- Create new branchrepositories.merge- Merge branch to main
claudeSessions.list- List all Claude sessionsclaudeSessions.search- Search sessions by contentclaudeSessions.getById- Get session detailsclaudeSessions.getStatistics- Usage analyticsclaudeSessions.createTaskFromSession- Convert to task
techStacks.list- List available tech stackstechStacks.create- Create custom stacktechStacks.update- Modify tech stacktechStacks.delete- Remove tech stack
command:new- New Claude command executedcommand:update- Command status updatedsession:start- Claude session startedsession:end- Claude session ended
room:join- User joined editing roomroom:leave- User left editing roomcursor:update- Cursor position changedcontent:update- File content changed
# List all users
cd apps/api && npx tsx scripts/list-users.ts
# List repositories
cd apps/api && npx tsx scripts/list-repositories.ts
# Check completed tasks
cd apps/api && npx tsx scripts/check-completed-tasks.ts
# Verify auth token
cd apps/api && npx tsx scripts/verify-token.ts# Track commands manually
node track-claude-command.js <tool> <action> [params]
# Manage Claude sessions
node claude-conversation-manager.js
# Save current web session
node save-current-web-session.jsThe init.sh script handles all initialization automatically:
./init.shWhat it does:
- β Installs all dependencies with pnpm
- β Creates environment files from templates
- β Sets up PostgreSQL database configuration
- β Runs database migrations
- β Creates default users
- β Creates necessary directories (git-repositories, logs)
- β Validates the setup
- β
Creates
.claude-commands.logfor Claude integration tracking
The cleanup.sh script provides various cleanup options:
./cleanup.sh- ποΈ Removes cloned git repositories
- ποΈ Clears temporary files
- β Keeps database and user data intact
./cleanup.sh --reset-db- ποΈ Removes all database data
- π Recreates database schema
- ποΈ Clears all git repositories
β οΈ All users and tasks will be deleted
./cleanup.sh --all --reset-db- ποΈ Everything from database reset
- ποΈ Removes node_modules
- ποΈ Clears build artifacts (.next, dist)
- ποΈ Removes log files
- π Returns project to fresh state
β οΈ Does not remove PostgreSQL installation
./cleanup.sh -y --reset-db- β‘ Runs cleanup without confirmation prompts
- π Useful for CI/CD pipelines
After running cleanup, re-initialize the project:
# After basic cleanup
pnpm dev # Just start the servers
# After database reset
./init.sh # Full re-initialization
# After complete cleanup
./init.sh # Full re-initialization requiredcd apps/api
npx prisma studio # Opens at http://localhost:5555# Reset database manually
cd apps/api
npx prisma migrate reset --force
# Run specific migration
npx prisma migrate dev
# Generate Prisma client
npx prisma generateOnce a database has been created and used, you may need to rebuild it completely. Here are the procedures:
# Use the cleanup script with database reset
./cleanup.sh --reset-db
# Then re-initialize
./init.shThis will:
- Drop all tables and data
- Recreate the database schema
- Create a fresh database with initial users
- Clear all git repositories
# 1. Stop all services
./stop-all.sh
# 2. Access PostgreSQL
sudo -u postgres psql
# 3. Drop and recreate database (in psql)
DROP DATABASE IF EXISTS gitcraft_studio;
CREATE DATABASE gitcraft_studio OWNER gitcraft;
GRANT ALL PRIVILEGES ON DATABASE gitcraft_studio TO gitcraft;
\q
# 4. Run migrations
cd apps/api
npx prisma migrate deploy
npx prisma generate
# 5. Create initial users (optional)
cd apps/api
npx tsx scripts/init-db.ts
# 6. Restart services
cd ../..
./start-all.sh# 1. Export user data
cd apps/api
npx tsx scripts/export-users.ts > users-backup.json
# 2. Reset database
cd ..
./cleanup.sh --reset-db
# 3. Re-initialize
./init.sh
# 4. Import user data
cd apps/api
npx tsx scripts/import-users.ts < users-backup.jsoncd apps/api
# Reset only tasks and related data
npx prisma db execute --file scripts/reset-tasks.sql
# Reset only repositories
npx prisma db execute --file scripts/reset-repositories.sql
# Reset only Claude sessions
npx prisma db execute --file scripts/reset-claude-sessions.sql# Full database backup
pg_dump -U gitcraft -h localhost gitcraft_studio > backup_$(date +%Y%m%d_%H%M%S).sql
# Compressed backup
pg_dump -U gitcraft -h localhost gitcraft_studio | gzip > backup_$(date +%Y%m%d_%H%M%S).sql.gz# From regular backup
psql -U gitcraft -h localhost gitcraft_studio < backup_20250127_120000.sql
# From compressed backup
gunzip -c backup_20250127_120000.sql.gz | psql -U gitcraft -h localhost gitcraft_studio-
Data Loss Warning: Database rebuild will delete ALL data including:
- User accounts
- Tasks and task history
- Repository configurations
- Claude sessions
- Tech stack templates
-
Git Repositories: Physical git repositories in
git-repositories/are NOT affected by database reset but their database records will be lost -
Environment Variables: Your
.envconfiguration will be preserved -
Recommended Approach: Always use
./cleanup.sh --reset-dbfollowed by./init.shfor cleanest results
Follow this step-by-step guide to integrate a new repository with Claude:
If you haven't created a repository on GitHub yet:
- Go to GitHub and create a new repository
- Do NOT initialize with README, .gitignore, or license
- Copy the repository URL
If your GitHub repository has no commits:
# Navigate to where you want to create the repository
cd ~/projects # or your preferred directory
# Create and initialize the repository
mkdir your-repository-name
cd your-repository-name
echo "# your-repository-name" >> README.md
git init
git add README.md
git commit -m "first commit"
git branch -M main
git remote add origin https://github.com/username/your-repository-name.git
git push -u origin main- Open GitCraft AI Studio: http://localhost:3000
- Navigate to
/repositories - Click "Clone Repository" button
- Fill in the form:
- Repository URL:
https://github.com/username/your-repository-name.git - Name: Your repository display name
- Description: Brief description
- Directory Name: Auto-filled from URL (customizable)
- Access Token: Required for private repositories
- Repository URL:
- Click "Clone" to register
- Go to the repository edit page:
/repositories/[id]/edit - In "Git Troubleshooting" section, click "Setup Git"
- This will:
- Initialize Git repository (if needed)
- Create initial commit (if needed)
- Configure remote settings
- Update branch information
- Navigate to
/claude-integration - In "Target Repository Selection":
- Select your repository from the dropdown
- Click "Confirm Selection"
- This will:
- Set the repository as Claude integration target
- Create
.claude/commands/instructions.mdfile automatically - Configure auto-commit and task creation
# Navigate to your repository directory
cd /path/to/GitCraft-AI-Studio/git-repositories/your-repository-name
# Start Claude CLI
claude
# Load GitCraft instructions
/instructionThis will:
- Load custom GitCraft commands (
recap,commit) - Configure language settings (Japanese responses if configured)
- Enable command tracking and auto-commit features
Now you can work normally with Claude. All commands will be:
- Tracked in real-time
- Auto-committed after 3 seconds
- Auto-pushed to GitHub (if authenticated)
- Converted to tasks automatically
# One-time setup for conversation auto-save
./setup-claude-conversation-autosave.sh
source ~/.bashrc
# Start Claude with auto-save and tracking
gc # or gitcraft-claude- π Automatic Recording: All Claude CLI conversations saved automatically
- π AI Summaries: Auto-generated summaries at session end
- πΎ Dual Storage: Local files + GitCraft database
- π Search & Browse: Find past sessions with search functionality
- π Usage Analytics: Track productivity patterns
- π Web UI: View sessions at
/claude-integration
- π Real-time Monitoring: Track all Claude tool usage
- π Auto-commit: Automatic Git operations triggered by ALL commands
- π― Task Creation: Convert sessions to tasks instantly
- π Session Browser: Search and analyze past sessions
- π§ Hook System: Custom automation with tool hooks
- β‘ Fast Response: 5-second (default) and can set by user delay for command batching
- π¦ Smart Commits: Includes untracked files automatically
gc-sessions # List all sessions
gc-latest # Show latest session summary
gc-show <ID> # Show specific session details
gc-search "query" # Search sessions
gc-stats # Show statistics.claude-sessions/2024-01-20T10-30-00-000Z-a1b2c3d4/
βββ metadata.json # Session metadata
βββ conversation.log # Full conversation log
βββ commands.json # Executed commands
βββ summary.json # AI-generated summary
- Start Session: Click "Start Tracking" in Claude Integration page
- Select Repository: Choose from dropdown or use current
- Work with Claude: ALL commands trigger auto-commit (not just file changes)
- Auto Task Creation: Task created after 3 seconds of ANY command
- Auto Operations:
- β Creates task with comprehensive command history
- β
Commits ALL files including untracked with
git add . - β Pushes to GitHub (if authenticated)
- β Marks task as COMPLETED
- β 30-second minimum between auto-commits (prevents spam)
Option 1: Personal Access Token (Recommended)
# Create token at: https://github.com/settings/tokens/new
# Scopes: repo (full control)
# Configure Git
git config --global credential.helper store
git push origin main
# Username: your-github-username
# Password: your-personal-access-tokenOption 2: SSH Key
ssh-keygen -t ed25519 -C "your-email@example.com"
eval "$(ssh-agent -s)"
ssh-add ~/.ssh/id_ed25519
# Add public key to GitHub settings# apps/api/.env
ANTHROPIC_API_KEY="claude" # For Claude CLI
# OR
ANTHROPIC_API_KEY="sk-ant-..." # For Anthropic API# Start with PM2 (included in start-all.sh)
pm2 start claude-auto-track.js --name claude-track
pm2 save
pm2 startup
# Monitor
pm2 logs claude-track
pm2 status1. Regular Work - Normal conversation for code creation/editing
2. Session End - User says "recap" β Claude lists commands
3. Command Execution - User says "commit" β Claude executes commands
# For testing or manual tracking
node track-claude-command.js <tool> <action> [params]
# Examples:
node track-claude-command.js Edit "Updated auth" file:auth.ts
node track-claude-command.js Bash "Run tests" command:"pnpm test"- β
Ensure
./start-all.shis running - β
Check PM2 status:
pm2 status - β
Verify
.claude-commands.logexists - β
Check API logs:
tail -f apps/api/dev.log
- β Click "Start Tracking" before working with Claude
- β Select repository from dropdown
- β Wait 3 seconds after ANY command for auto-task
- β
Check Git auth:
git push origin main - β Auto-commit now triggers on ALL commands (not just file changes)
- β
Untracked files are automatically included with
git add .
# Clear Git lock
rm -f .git/index.lock
# Reset Claude tracking
pm2 restart claude-track
# Check system health
./check-system.sh# Type checking
pnpm type-check
# Linting and formatting
pnpm lint
pnpm format
# Build all apps
pnpm build
# Run specific app
pnpm --filter web dev
pnpm --filter api dev
# Run tests
pnpm test# Open Prisma Studio
cd apps/api && npx prisma studio
# Run migrations
cd apps/api && npx prisma migrate dev
# Reset database
cd apps/api && npx prisma migrate reset
# Generate Prisma client
cd apps/api && npx prisma generate# User management
cd apps/api && npx tsx scripts/list-users.ts
cd apps/api && npx tsx scripts/create-test-user.ts
# Repository management
cd apps/api && npx tsx scripts/list-repositories.ts
cd apps/api && npx tsx scripts/cleanup-repo.ts
cd apps/api && npx tsx scripts/update-repo-paths.ts
# Task management
cd apps/api && npx tsx scripts/check-completed-tasks.ts
See Environment Variables Guide for complete documentation.
Key variables:
ANTHROPIC_API_KEY- Claude API key or "claude" for CLIDATABASE_URL- PostgreSQL connection stringNEXTAUTH_SECRET- Authentication secretSMTP_*- Email configuration (optional)
The notification system is currently under development. While settings can be configured in the Settings β Notifications panel, the following features may not work as expected:
- Desktop notifications
- Sound notifications
- Task completion alerts
- Review request notifications
This feature will be fully implemented in a future release.
# Run comprehensive system check
./check-system.sh# Kill processes on specific ports
lsof -ti:3000 | xargs kill -9 # Web server
lsof -ti:4000 | xargs kill -9 # API server
# Or use the stop script
./stop-all.sh# Clear cache and reinstall
rm -rf node_modules .turbo pnpm-lock.yaml
pnpm install# This project uses pnpm workspaces, not npm
# Install pnpm if not already installed
npm install -g pnpm
# Then use pnpm instead of npm
pnpm install# PM2 is optional but recommended for Claude tracking
# Install globally with sudo
sudo npm install -g pm2
# Or install locally and use npx
npm install pm2
npx pm2 status# Check PostgreSQL status
sudo service postgresql status
# Start PostgreSQL
sudo service postgresql start
# Verify connection
psql -U gitcraft -d gitcraft_studio -c "SELECT 1"# Reset database completely
./cleanup.sh --reset-db
# Manual reset
cd apps/api
npx prisma migrate reset --force
npx tsx scripts/init-db.ts# Check PM2 process
pm2 status
# Restart Claude tracker
pm2 restart claude-track
# Check log file exists
ls -la .claude-commands.log
# Monitor real-time logs
pm2 logs claude-track --lines 50-
Verify Setup:
- β Click "Start Tracking" before changes
- β Select repository from dropdown
- β Wait 3 seconds for auto-task creation
-
Check Git Status:
git remote -v # Should show repository git status # Should show changes git config --list # Check credentials
-
Monitor Logs:
# API server Git operations tail -f apps/api/dev.log | grep -E "(Git|commit|push)" # WebSocket events # Check browser console for real-time events
# Remove lock file
rm -f .git/index.lock
# If in repository subdirectory
find . -name "index.lock" -delete-
Environment Variables:
# Verify matching secrets grep NEXTAUTH_SECRET apps/api/.env grep AUTH_SECRET apps/web/.env.local -
Clear Session:
# Clear browser cookies # Or in incognito mode
-
Create Initial User:
cd apps/api # Create a new user with the signup API or through the web interface
Personal Access Token Issues:
# Clear credentials
git config --global --unset credential.helper
# Set new helper
git config --global credential.helper store
# Test with new token
git push origin main
# Username: your-github-username
# Password: your-personal-access-tokenSSH Key Issues:
# Test SSH connection
ssh -T git@github.com
# Add SSH key to agent
eval "$(ssh-agent -s)"
ssh-add ~/.ssh/id_ed25519
# Verify remote URL
git remote set-url origin git@github.com:username/repo.git# Check WebSocket server
curl http://localhost:4000/debug/websocket
# Monitor connections
tail -f apps/api/dev.log | grep WebSocket
# Restart services
./stop-all.sh && ./start-all.sh| Error | Solution |
|---|---|
EADDRINUSE |
Port in use, run ./stop-all.sh |
ECONNREFUSED |
Database not running, start PostgreSQL |
Invalid token |
Clear cookies, login again |
Git push failed |
Check GitHub authentication |
Command not tracked |
Ensure PM2 claude-track is running |
Module not found |
Run pnpm install |
ai-service-dev not found |
File removed, imports updated |
-
Check Logs:
# All logs tail -f apps/*/dev.log # PM2 logs pm2 logs
-
Reset Everything:
./cleanup.sh --all --reset-db ./init.sh ./start-all.sh
-
Report Issue:
- Check existing issues: GitHub Issues
- Include error logs and system info
- Mention steps to reproduce
- π Authentication: NextAuth.js with email/password, password reset
- π Task Management: 6-state workflow with priorities
- π€ AI Integration: 4 Claude models, streaming, context awareness
- π Real-time Features: WebSocket collaboration, cursor tracking
- ποΈ Repository Management: GitHub integration, local repo support, path editing
- ποΈ Database: PostgreSQL + Prisma ORM
- βοΈ Settings: User preferences, tech stack templates
- π i18n: Complete English & Japanese interface
- π Help System: Comprehensive 10-section documentation with search
- π Claude Integration: Command tracking, auto-save, session browser
- π Auto Operations: Git commit/push from Claude sessions
- π§ Repository Path Management: Update repository paths in settings
- π« Duplicate Prevention: Check for existing repositories before cloning
- Complete remaining 6 help pages (Tasks, Claude AI, Git Operations, Settings, Collaboration, API Reference)
- GitLab and Bitbucket integration
- Team collaboration features
- Advanced AI code analysis
- Plugin system
- Mobile app
- CI/CD integration
We welcome contributions! Please follow these steps:
- Fork the repository
- Create a feature branch:
git checkout -b feature/amazing-feature
- Commit your changes:
git commit -m 'Add amazing feature' - Push to the branch:
git push origin feature/amazing-feature
- Open a Pull Request
- Follow TypeScript best practices
- Write tests for new features
- Update documentation
- Ensure all checks pass
- π Comprehensive Help System: Added 10-section help documentation with search functionality
- π Complete i18n: Full Japanese & English translations for all help content
- π Advanced Search: Real-time filtering across all documentation
- π± Responsive Design: Mobile-optimized help pages with expandable sections
- π¨ Enhanced UI: Modern help interface with copy-to-clipboard code blocks
- π Interactive Guides: Step-by-step installation and troubleshooting guides
- π§ Troubleshooting System: 6 common issues with expandable solutions and commands
- π Quick Navigation: Help section overview with visual icons and descriptions
- ποΈ Repository Directory Structure: Removed random ID generation, now uses repository name directly
- π Repository Description: Fixed description field not being saved during creation/edit
- π Multi-language Support: Added output language selection (Japanese/English) for AI-generated content
- π§ Clone Directory Management: Added directory name field with automatic extraction from URL
- π Clone Path Preview: Shows destination path before cloning
- π§ Repository Path Management: Added ability to update repository paths in settings
- π« Duplicate Repository Check: Prevent cloning same repository multiple times
- ποΈ Repository Deletion: Added delete functionality with proper cleanup
- π Claude Workflow: Simplified commands - use "recap" and "commit"
- π§Ή Code Cleanup: Removed development-only files and updated naming conventions
- π Bug Fixes: Fixed import references to removed ai-service-dev files
- π Enhanced Auto-Git: Commands now trigger automatic Git commit/push
- β‘ Faster Response: Reduced delay from 5s to 3s for command batching
- π¦ Include All Files: Untracked files automatically included with
git add . - π― Universal Triggers: ALL commands trigger auto-commit (not just file changes)
- π Smart Batching: 30-second minimum between commits to prevent spam
- π Better Descriptions: Comprehensive task descriptions with all command types
IMPORTANT: This software is provided "as is", without warranty of any kind, express or implied. The developers and contributors of GitCraft AI Studio assume no responsibility or liability for any damages, data loss, security breaches, or any other issues that may arise from using this software. Use at your own risk.
By using GitCraft AI Studio, you acknowledge that:
- You are solely responsible for your code, data, and repository security
- The automated Git operations may potentially cause data loss if not configured properly
- AI-generated code should always be reviewed before deployment
- You should maintain regular backups of your important code
This project is licensed under the MIT License - see the LICENSE file for details.
- π€ Built with Claude AI assistance
- π Powered by Anthropic's Claude API
- π¨ UI components from shadcn/ui
- π― Icons from Lucide React
- π Built with Next.js and tRPC
- π Documentation: Built-in help system at
/help - π Issues: GitHub Issues
- π¬ Discussions: GitHub Discussions
- π§ Email: yoshimasa.yamamoto@cruzy.jp
GitCraft AI Studio - Empowering developers with AI-driven Git workflows
Made with β€οΈ by the GitCraft team