Initial commit: Add documentation and gitignore
🤖 Generated with Claude Code Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
121
.gitignore
vendored
Normal file
121
.gitignore
vendored
Normal file
@@ -0,0 +1,121 @@
|
|||||||
|
# Windows
|
||||||
|
Thumbs.db
|
||||||
|
ehthumbs.db
|
||||||
|
Desktop.ini
|
||||||
|
|
||||||
|
# Windows Installer files
|
||||||
|
*.cab
|
||||||
|
*.msi
|
||||||
|
*.msix
|
||||||
|
*.msm
|
||||||
|
*.msp
|
||||||
|
|
||||||
|
# Windows shortcuts
|
||||||
|
*.lnk
|
||||||
|
|
||||||
|
# Windows cache directories
|
||||||
|
[.cache]/
|
||||||
|
[.local]/
|
||||||
|
[.temp]/
|
||||||
|
[.tmp]/
|
||||||
|
|
||||||
|
# Windows application data
|
||||||
|
AppData/
|
||||||
|
Local Settings/
|
||||||
|
NTUSER*
|
||||||
|
ntuser*
|
||||||
|
|
||||||
|
# Development tools
|
||||||
|
.vscode/
|
||||||
|
.android/
|
||||||
|
.gradle/
|
||||||
|
.emulator_console_auth_token
|
||||||
|
expo/
|
||||||
|
.bun/
|
||||||
|
.claude/
|
||||||
|
.claude-server-commander/
|
||||||
|
.codex/
|
||||||
|
.config/
|
||||||
|
.docker/
|
||||||
|
.gemini/
|
||||||
|
.gitconfig/
|
||||||
|
.gitlab/
|
||||||
|
.kilocode/
|
||||||
|
.lmstudio/
|
||||||
|
.lmstudio-home-pointer/
|
||||||
|
.marscode/
|
||||||
|
.mult-fetch-mcp-server/
|
||||||
|
.pm2/
|
||||||
|
.qwen/
|
||||||
|
.sbx-denybin/
|
||||||
|
.ssh/
|
||||||
|
.trae/
|
||||||
|
.trae-aicc/
|
||||||
|
.trae-cn/
|
||||||
|
.wslconfig
|
||||||
|
|
||||||
|
# Python
|
||||||
|
__pycache__/
|
||||||
|
*.py[cod]
|
||||||
|
*$py.class
|
||||||
|
*.so
|
||||||
|
.Python
|
||||||
|
env/
|
||||||
|
venv/
|
||||||
|
ENV/
|
||||||
|
env.bak/
|
||||||
|
venv.bak/
|
||||||
|
|
||||||
|
# Node.js
|
||||||
|
node_modules/
|
||||||
|
npm-debug.log*
|
||||||
|
yarn-debug.log*
|
||||||
|
yarn-error.log*
|
||||||
|
|
||||||
|
# Logs
|
||||||
|
*.log
|
||||||
|
logs/
|
||||||
|
|
||||||
|
# Temporary files
|
||||||
|
*.tmp
|
||||||
|
*.temp
|
||||||
|
*.bak
|
||||||
|
*~
|
||||||
|
|
||||||
|
# OS generated files
|
||||||
|
.DS_Store
|
||||||
|
.DS_Store?
|
||||||
|
._*
|
||||||
|
.Spotlight-V100
|
||||||
|
.Trashes
|
||||||
|
ehthumbs.db
|
||||||
|
Thumbs.db
|
||||||
|
|
||||||
|
# Large binaries
|
||||||
|
*.exe
|
||||||
|
*.zip
|
||||||
|
*.tar.gz
|
||||||
|
*.rar
|
||||||
|
|
||||||
|
# Database files
|
||||||
|
*.db
|
||||||
|
*.sqlite
|
||||||
|
*.sqlite3
|
||||||
|
|
||||||
|
# IDE files
|
||||||
|
.idea/
|
||||||
|
*.swp
|
||||||
|
*.swo
|
||||||
|
*~
|
||||||
|
|
||||||
|
# Build outputs
|
||||||
|
build/
|
||||||
|
dist/
|
||||||
|
out/
|
||||||
|
|
||||||
|
# Environment files
|
||||||
|
.env
|
||||||
|
.env.local
|
||||||
|
.env.development.local
|
||||||
|
.env.test.local
|
||||||
|
.env.production.local
|
||||||
103
README.md
Normal file
103
README.md
Normal file
@@ -0,0 +1,103 @@
|
|||||||
|
# Claude Code PowerShell Python App
|
||||||
|
|
||||||
|
A sophisticated PowerShell wrapper application that provides coding assistance in the style of Claude Code, using Qwen3-Coder models with support for both LM Studio server and direct model loading.
|
||||||
|
|
||||||
|
## Files Created
|
||||||
|
- `lm_studio_client.py` - Enhanced Python client script with Qwen3-Coder features
|
||||||
|
- `lm_studio.ps1` - PowerShell wrapper script
|
||||||
|
- `README.md` - This documentation
|
||||||
|
|
||||||
|
## Prerequisites
|
||||||
|
1. Python 3.7+ installed and in PATH
|
||||||
|
2. For LM Studio: LM Studio running with server enabled on http://127.0.0.1:1234
|
||||||
|
3. For Qwen direct: transformers and torch libraries
|
||||||
|
4. Python requests library (auto-installed by script)
|
||||||
|
5. Optional: Flask for web interface
|
||||||
|
|
||||||
|
## Usage
|
||||||
|
|
||||||
|
### PowerShell Commands:
|
||||||
|
|
||||||
|
**List available models (LM Studio only):**
|
||||||
|
```powershell
|
||||||
|
.\lm_studio.ps1 -ListModels
|
||||||
|
```
|
||||||
|
|
||||||
|
**Single prompt:**
|
||||||
|
```powershell
|
||||||
|
.\lm_studio.ps1 -Prompt "Write a Python function to sort a list"
|
||||||
|
```
|
||||||
|
|
||||||
|
**Interactive chat mode:**
|
||||||
|
```powershell
|
||||||
|
.\lm_studio.ps1 -Interactive
|
||||||
|
```
|
||||||
|
|
||||||
|
**With specific language focus:**
|
||||||
|
```powershell
|
||||||
|
.\lm_studio.ps1 -Interactive -Language python
|
||||||
|
```
|
||||||
|
|
||||||
|
**Using Qwen direct model:**
|
||||||
|
```powershell
|
||||||
|
.\lm_studio.ps1 -Client qwen -Prompt "Hello"
|
||||||
|
```
|
||||||
|
|
||||||
|
**Fill-in-the-middle code completion:**
|
||||||
|
```powershell
|
||||||
|
.\lm_studio.ps1 -Client qwen -FimPrefix "def sort_list(arr):" -FimSuffix "return sorted_arr"
|
||||||
|
```
|
||||||
|
|
||||||
|
**Start web interface:**
|
||||||
|
```powershell
|
||||||
|
.\lm_studio.ps1 -Web -Port 8080
|
||||||
|
```
|
||||||
|
|
||||||
|
**Start terminal user interface:**
|
||||||
|
```powershell
|
||||||
|
.\lm_studio.ps1 -Tui
|
||||||
|
```
|
||||||
|
|
||||||
|
### Direct Python Usage:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
python lm_studio_client.py --help
|
||||||
|
python lm_studio_client.py --client qwen --prompt "Create a REST API"
|
||||||
|
python lm_studio_client.py --interactive
|
||||||
|
python lm_studio_client.py --client qwen --fim-prefix "def hello():" --fim-suffix "print('world')"
|
||||||
|
python lm_studio_client.py --web --port 5000
|
||||||
|
python lm_studio_client.py --tui
|
||||||
|
```
|
||||||
|
|
||||||
|
## Features
|
||||||
|
- **Dual Client Support**: LM Studio server or direct Qwen3-Coder model loading
|
||||||
|
- **Interactive Chat**: Real-time conversation with the AI coding assistant
|
||||||
|
- **Terminal User Interface**: Curses-based TUI for interactive chat
|
||||||
|
- **Fill-in-the-Middle**: Advanced code completion for partial code snippets
|
||||||
|
- **Language-Specific Assistance**: Focus on specific programming languages
|
||||||
|
- **Web Interface**: Modern web UI with tabs for different features
|
||||||
|
- **Model Selection**: Choose from available models
|
||||||
|
- **Auto-Dependency Installation**: Automatically installs required Python packages
|
||||||
|
- **Error Handling**: Robust error handling and validation
|
||||||
|
|
||||||
|
## Qwen3-Coder Features
|
||||||
|
- **Agentic Coding**: Advanced coding capabilities with tool use
|
||||||
|
- **Long Context**: Support for up to 256K tokens
|
||||||
|
- **358 Programming Languages**: Comprehensive language support
|
||||||
|
- **Fill-in-the-Middle**: Specialized code completion
|
||||||
|
- **Function Calling**: Tool integration capabilities
|
||||||
|
|
||||||
|
## Setup
|
||||||
|
1. For LM Studio: Ensure LM Studio is running with server enabled
|
||||||
|
2. For Qwen direct: Install transformers: `pip install transformers torch`
|
||||||
|
3. For web interface: Install Flask: `pip install flask`
|
||||||
|
4. Run the PowerShell script from the same directory
|
||||||
|
5. The script will auto-install required Python dependencies
|
||||||
|
|
||||||
|
## Web Interface
|
||||||
|
The web interface provides three main tabs:
|
||||||
|
- **Chat**: Interactive conversation with the AI
|
||||||
|
- **Fill-in-the-Middle**: Code completion for partial snippets
|
||||||
|
- **Code Assistant**: Generate code from descriptions
|
||||||
|
|
||||||
|
Access at `http://localhost:5000` (or custom port)
|
||||||
53
RUNNING_INSTRUCTIONS.md
Normal file
53
RUNNING_INSTRUCTIONS.md
Normal file
@@ -0,0 +1,53 @@
|
|||||||
|
# Smart Calendar Project - Running Instructions
|
||||||
|
|
||||||
|
This document provides instructions on how to run the Smart Calendar Project (Reclaim.ai clone) in WSL.
|
||||||
|
|
||||||
|
## Prerequisites Installed
|
||||||
|
|
||||||
|
The following prerequisites have been installed in your WSL environment:
|
||||||
|
- Node.js and npm
|
||||||
|
- PostgreSQL database
|
||||||
|
- Database schema has been applied to the `reclaim_clone` database
|
||||||
|
- Client dependencies have been installed
|
||||||
|
|
||||||
|
## Running the Application
|
||||||
|
|
||||||
|
### 1. Start PostgreSQL (if not already running):
|
||||||
|
```bash
|
||||||
|
sudo service postgresql start
|
||||||
|
```
|
||||||
|
|
||||||
|
### 2. Start the frontend development server:
|
||||||
|
```bash
|
||||||
|
cd ~/reclaim-clone/client
|
||||||
|
npm run dev
|
||||||
|
```
|
||||||
|
|
||||||
|
The frontend will be available at http://localhost:3000
|
||||||
|
|
||||||
|
### 3. (Optional) Start the backend server:
|
||||||
|
Note: The Swift backend requires Swift to be installed in WSL, which is a more involved process. The backend would typically run on port 8080.
|
||||||
|
|
||||||
|
## Current Status
|
||||||
|
|
||||||
|
Currently, the frontend is fully set up and ready to run. The database is configured and ready for use.
|
||||||
|
|
||||||
|
To run the complete application with backend functionality, Swift would need to be installed in WSL, which requires additional steps specific to your Ubuntu version.
|
||||||
|
|
||||||
|
## Quick Start Script
|
||||||
|
|
||||||
|
You can use the provided script to quickly start the frontend:
|
||||||
|
```bash
|
||||||
|
~/start_project.sh
|
||||||
|
```
|
||||||
|
|
||||||
|
Then access the application at http://localhost:3000
|
||||||
|
|
||||||
|
## Stopping the Application
|
||||||
|
|
||||||
|
To stop the application:
|
||||||
|
1. Press Ctrl+C in the terminal where the development server is running
|
||||||
|
2. If you started PostgreSQL, you can stop it with:
|
||||||
|
```bash
|
||||||
|
sudo service postgresql stop
|
||||||
|
```
|
||||||
169
TESTING_WSL.md
Normal file
169
TESTING_WSL.md
Normal file
@@ -0,0 +1,169 @@
|
|||||||
|
# Testing the Smart Calendar Project in WSL
|
||||||
|
|
||||||
|
This document provides instructions for testing the Reclaim.ai clone (smart calendar project) in your WSL environment.
|
||||||
|
|
||||||
|
## Prerequisites Verification
|
||||||
|
|
||||||
|
1. **Verify WSL is running:**
|
||||||
|
```bash
|
||||||
|
wsl --status
|
||||||
|
```
|
||||||
|
|
||||||
|
2. **Confirm Ubuntu distribution is accessible:**
|
||||||
|
```bash
|
||||||
|
wsl -d Ubuntu --exec whoami
|
||||||
|
```
|
||||||
|
|
||||||
|
## Project Setup in WSL
|
||||||
|
|
||||||
|
1. **Enter your WSL environment:**
|
||||||
|
```bash
|
||||||
|
wsl -d Ubuntu
|
||||||
|
```
|
||||||
|
|
||||||
|
2. **Navigate to the project directory:**
|
||||||
|
```bash
|
||||||
|
cd ~/reclaim-clone
|
||||||
|
```
|
||||||
|
|
||||||
|
3. **Run the setup script to install dependencies:**
|
||||||
|
```bash
|
||||||
|
chmod +x ~/setup_in_wsl.sh
|
||||||
|
~/setup_in_wsl.sh
|
||||||
|
```
|
||||||
|
|
||||||
|
Or follow manual steps below:
|
||||||
|
|
||||||
|
4. **Install backend dependencies (Swift):**
|
||||||
|
```bash
|
||||||
|
# Update package list
|
||||||
|
sudo apt update
|
||||||
|
|
||||||
|
# Install Swift prerequisites
|
||||||
|
sudo apt install -y clang libicu-dev libxml2-dev libzip-dev libbsd-dev
|
||||||
|
|
||||||
|
# For Ubuntu 20.04 or 22.04, install Swift using these commands:
|
||||||
|
VERSION=$(lsb_release -rs)
|
||||||
|
if [[ $VERSION == "20.04" || $VERSION == "22.04" ]]; then
|
||||||
|
wget -q -O - https://swift.org/keys/all-keys.asc | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/swift-archive.gpg
|
||||||
|
echo "deb [signed-by=/etc/apt/trusted.gpg.d/swift-archive.gpg] https://download.swift.org/ubuntu$(echo $VERSION | sed 's/\.//') stable main" | sudo tee /etc/apt/sources.list.d/swift.list
|
||||||
|
sudo apt update
|
||||||
|
sudo apt install -y swift-lang
|
||||||
|
fi
|
||||||
|
```
|
||||||
|
|
||||||
|
5. **Install frontend dependencies (Node.js & npm):**
|
||||||
|
```bash
|
||||||
|
# Install Node.js
|
||||||
|
curl -fsSL https://deb.nodesource.com/setup_lts.x | sudo -E bash -
|
||||||
|
sudo apt-get install -y nodejs
|
||||||
|
```
|
||||||
|
|
||||||
|
6. **Install and configure PostgreSQL:**
|
||||||
|
```bash
|
||||||
|
# Install PostgreSQL
|
||||||
|
sudo apt update
|
||||||
|
sudo apt install -y postgresql postgresql-contrib
|
||||||
|
|
||||||
|
# Start PostgreSQL service
|
||||||
|
sudo service postgresql start
|
||||||
|
|
||||||
|
# Set up the reclaim_clone database
|
||||||
|
sudo -u postgres createuser --superuser $(whoami)
|
||||||
|
sudo -u postgres createdb reclaim_clone
|
||||||
|
sudo -u postgres psql -d reclaim_clone -f ~/reclaim-clone/database/schema.sql
|
||||||
|
```
|
||||||
|
|
||||||
|
7. **Install client dependencies:**
|
||||||
|
```bash
|
||||||
|
cd ~/reclaim-clone/client
|
||||||
|
npm install
|
||||||
|
cd ..
|
||||||
|
```
|
||||||
|
|
||||||
|
## Testing the Backend (API)
|
||||||
|
|
||||||
|
1. **Navigate to the project directory:**
|
||||||
|
```bash
|
||||||
|
cd ~/reclaim-clone
|
||||||
|
```
|
||||||
|
|
||||||
|
2. **Test the backend (API server):**
|
||||||
|
```bash
|
||||||
|
swift run
|
||||||
|
```
|
||||||
|
|
||||||
|
3. **Verify the backend is running:**
|
||||||
|
- Open another terminal tab
|
||||||
|
- Enter WSL: `wsl -d Ubuntu`
|
||||||
|
- Test the API: `curl http://localhost:8080`
|
||||||
|
- You should see a response from the server
|
||||||
|
|
||||||
|
## Testing the Frontend (Web Client)
|
||||||
|
|
||||||
|
1. **Navigate to the client directory:**
|
||||||
|
```bash
|
||||||
|
cd ~/reclaim-clone/client
|
||||||
|
```
|
||||||
|
|
||||||
|
2. **Start the development server:**
|
||||||
|
```bash
|
||||||
|
npm run dev
|
||||||
|
```
|
||||||
|
|
||||||
|
3. **Verify the frontend is running:**
|
||||||
|
- Open a browser on the Windows host
|
||||||
|
- Navigate to `http://localhost:3000`
|
||||||
|
- You should see the Reclaim.ai clone application
|
||||||
|
|
||||||
|
## Testing Full Integration
|
||||||
|
|
||||||
|
1. **Start both backend and frontend:**
|
||||||
|
- Terminal 1: `cd ~/reclaim-clone && swift run`
|
||||||
|
- Terminal 2: `cd ~/reclaim-clone/client && npm run dev`
|
||||||
|
|
||||||
|
2. **Access the application:**
|
||||||
|
- In your Windows browser, go to `http://localhost:3000`
|
||||||
|
- You should be able to use the full application with all features
|
||||||
|
|
||||||
|
## Troubleshooting
|
||||||
|
|
||||||
|
1. **If PostgreSQL service isn't starting:**
|
||||||
|
```bash
|
||||||
|
sudo service postgresql start
|
||||||
|
sudo systemctl enable postgresql
|
||||||
|
```
|
||||||
|
|
||||||
|
2. **If Swift isn't available:**
|
||||||
|
- Check Ubuntu version: `lsb_release -a`
|
||||||
|
- Visit https://www.swift.org/download/ for Ubuntu-specific installation instructions
|
||||||
|
|
||||||
|
3. **If the frontend can't connect to the backend:**
|
||||||
|
- Verify both services are running
|
||||||
|
- Check that the backend is running on port 8080
|
||||||
|
- Verify the frontend is configured to connect to the correct backend URL
|
||||||
|
|
||||||
|
4. **If you have permission issues:**
|
||||||
|
```bash
|
||||||
|
# Fix file permissions if needed
|
||||||
|
sudo chown -R $(whoami):$(whoami) ~/reclaim-clone
|
||||||
|
```
|
||||||
|
|
||||||
|
## Verification Checklist
|
||||||
|
|
||||||
|
- [ ] WSL Ubuntu is accessible
|
||||||
|
- [ ] Project files are available in `~/reclaim-clone`
|
||||||
|
- [ ] Swift is installed and accessible (`swift --version`)
|
||||||
|
- [ ] Node.js is installed and accessible (`node --version`)
|
||||||
|
- [ ] PostgreSQL is installed and running
|
||||||
|
- [ ] Backend server starts without errors
|
||||||
|
- [ ] Frontend server starts without errors
|
||||||
|
- [ ] Application is accessible via browser at `http://localhost:3000`
|
||||||
|
- [ ] All major features of the smart calendar app are functional
|
||||||
|
|
||||||
|
## Additional Notes
|
||||||
|
|
||||||
|
- The project is now fully migrated to WSL and can be developed using Linux tools
|
||||||
|
- You can access the files from Windows at `\\wsl.localhost\Ubuntu\home\{username}\reclaim-clone`
|
||||||
|
- For development, you can use VS Code with the Remote-WSL extension for a better experience
|
||||||
|
- The application supports Trello-like kanban boards, calendar integration, and multi-user system as designed
|
||||||
Reference in New Issue
Block a user