feat: Week 1 complete - Linux support + IPC API prep
🎉 Major v2.0 rebuild kickoff - Week 1 accomplished! ## Highlights ### Cross-Platform Support 🌍 - ✅ Linux primary platform (Ubuntu/Debian tested) - ✅ Windows fully supported - ✅ macOS experimental support - ✅ Platform-agnostic path handling (XDG spec) - ✅ Auto-detection of KiCAD installation ### Infrastructure 🏗️ - ✅ GitHub Actions CI/CD pipeline - ✅ Pytest framework with 20+ tests - ✅ Pre-commit hooks (Black, MyPy, ESLint) - ✅ Automated Linux installation script - ✅ Enhanced npm scripts ### IPC API Migration Prep 🚀 - ✅ Comprehensive migration plan (30 pages) - ✅ Backend abstraction layer (800+ lines) - ✅ Factory pattern with auto-detection - ✅ SWIG backward compatibility wrapper - ✅ IPC backend skeleton ready ### Documentation 📚 - ✅ Updated README (Linux installation) - ✅ CONTRIBUTING.md guide - ✅ Linux compatibility audit - ✅ IPC API migration plan - ✅ Session summaries - ✅ Platform-specific config templates ## Files Changed - 27 files created - ~3,000 lines of code/docs - 8 comprehensive documentation pages - 20+ unit tests - 5 abstraction layer modules ## Next Steps - Week 2: IPC API migration (project.py → component.py → routing.py) - Migrate from deprecated SWIG to official IPC API - JLCPCB/Digikey integration prep 🤖 Generated with Claude Code https://claude.com/claude-code Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
14
config/claude-desktop-config.json
Normal file
14
config/claude-desktop-config.json
Normal file
@@ -0,0 +1,14 @@
|
||||
{
|
||||
"mcpServers": {
|
||||
"kicad_helper": {
|
||||
"command": "node",
|
||||
"args": ["dist/index.js"],
|
||||
"cwd": "c:/repo/KiCAD-MCP",
|
||||
"env": {
|
||||
"NODE_ENV": "production",
|
||||
"PYTHONPATH": "C:/Program Files/KiCad/9.0/lib/python3/dist-packages"
|
||||
},
|
||||
"description": "KiCAD PCB Design Assistant"
|
||||
}
|
||||
}
|
||||
}
|
||||
9
config/default-config.json
Normal file
9
config/default-config.json
Normal file
@@ -0,0 +1,9 @@
|
||||
{
|
||||
"name": "kicad-mcp-server",
|
||||
"version": "1.0.0",
|
||||
"description": "MCP server for KiCAD PCB design operations",
|
||||
"pythonPath": "",
|
||||
"kicadPath": "",
|
||||
"logLevel": "info",
|
||||
"logDir": ""
|
||||
}
|
||||
16
config/linux-config.example.json
Normal file
16
config/linux-config.example.json
Normal file
@@ -0,0 +1,16 @@
|
||||
{
|
||||
"mcpServers": {
|
||||
"kicad": {
|
||||
"command": "node",
|
||||
"args": ["/path/to/kicad-mcp/dist/index.js"],
|
||||
"cwd": "/home/user/kicad-mcp",
|
||||
"env": {
|
||||
"NODE_ENV": "production",
|
||||
"PYTHONPATH": "/usr/lib/kicad/lib/python3/dist-packages",
|
||||
"LOG_LEVEL": "info"
|
||||
},
|
||||
"description": "KiCAD PCB Design Assistant",
|
||||
"transportType": "stdio"
|
||||
}
|
||||
}
|
||||
}
|
||||
16
config/macos-config.example.json
Normal file
16
config/macos-config.example.json
Normal file
@@ -0,0 +1,16 @@
|
||||
{
|
||||
"mcpServers": {
|
||||
"kicad": {
|
||||
"command": "node",
|
||||
"args": ["/Users/username/kicad-mcp/dist/index.js"],
|
||||
"cwd": "/Users/username/kicad-mcp",
|
||||
"env": {
|
||||
"NODE_ENV": "production",
|
||||
"PYTHONPATH": "/Applications/KiCad/KiCad.app/Contents/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages",
|
||||
"LOG_LEVEL": "info"
|
||||
},
|
||||
"description": "KiCAD PCB Design Assistant",
|
||||
"transportType": "stdio"
|
||||
}
|
||||
}
|
||||
}
|
||||
16
config/windows-config.example.json
Normal file
16
config/windows-config.example.json
Normal file
@@ -0,0 +1,16 @@
|
||||
{
|
||||
"mcpServers": {
|
||||
"kicad": {
|
||||
"command": "C:\\Program Files\\nodejs\\node.exe",
|
||||
"args": ["C:/path/to/kicad-mcp/dist/index.js"],
|
||||
"cwd": "C:/path/to/kicad-mcp",
|
||||
"env": {
|
||||
"NODE_ENV": "production",
|
||||
"PYTHONPATH": "C:/Program Files/KiCad/9.0/lib/python3/dist-packages",
|
||||
"LOG_LEVEL": "info"
|
||||
},
|
||||
"description": "KiCAD PCB Design Assistant",
|
||||
"transportType": "stdio"
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user