Core-PCB is a stand-alone project derived from selected core-ce components, focused on AI-assisted schematic and PCB design workflows.
Primary target capability:
- Run and orchestrate local models (including multimodal/vision-capable models) for electronics tasks, such as:
- schematic interpretation
- netlist reasoning
- PCB placement/routing guidance
- design rule and manufacturability review
Initial target model reference:
- Local-first and local-only by default.
- Runtime scope for current architecture:
llama.cpponly. - Frontier APIs are optional and not required for base operation.
- Stand-alone project structure inside this repository.
- Reuse strategy from
core-cefor:
- Hugging Face metadata/download flows
- local runtime launching and model session management
- optional deterministic tooling and RAG adaptation for EDA documents
- No modifications to existing
core-cefiles.
- Option 1 (active): external app + file bridge.
- Option 2 (stub): external app + KiCad Python bridge.
- Option 3 (stub): KiCad Action Plugin.
See docs/ARCHITECTURE.md and docs/INTEGRATION_PATHS.md.
Install dependencies once:
cd Core-PCB
npm installLinux runtime bootstrap (recommended):
cd Core-PCB
./install/RUN_ONCE_LINUX.shDesktop app (Electron):
npm run desktopWeb app only:
npm startOpen http://localhost:4310.
Alternative launchers from the Core-PCB folder:
- Linux desktop:
./start.sh - Linux web:
./start-web.sh - macOS web:
./start.command - Windows web:
start.bat - macOS desktop:
./start-desktop.command - Windows desktop:
start-desktop.bat
RUN_ONCE_LINUX.sh creates .venv, installs adapter runtime Python deps, and writes .env.local with CORE_PCB_PYTHON for launcher scripts.
Current UI supports:
- optional Hugging Face token save
- add model by Hugging Face URL (auto metadata scrape)
- local catalog persistence
llama.cpp(llama-server) start/stop/status
For implementation status, see docs/MVP_STATUS.md.
