3D orientation (the key gap): boards now have yaw/tilt/roll, so legs and uprights can stand vertically. geometry.py and viewer.py apply the full rotation; join is orientation-aware (vertical boards rest their base on the target face). Old rotation_deg scenes migrate transparently. New operations + CLI subcommands + wood-* tools: stand, lay, rotate, move, trim (cut to length), copy, rename (human aliases, resolvable by name), clear. Parts resolve by id OR name. Cut list (cutlist.py): grouped cut list, board-feet (nominal), and an 8'-stick shopping estimate with waste — the workshop-assistant payoff. Driver: auto-discovers all wood-* tools (glob), richer prompt that decomposes "build a table" into place/stand/join/move and labels parts. Verified: one sentence -> an 8-board table base with a correct cut list. 14 wood-* CmdForge tools regenerated. 36 tests passing. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> |
||
|---|---|---|
| scripts | ||
| src/woodshop | ||
| tests | ||
| .gitignore | ||
| CLAUDE.md | ||
| README.md | ||
| pyproject.toml | ||
README.md
WoodShop
Voice-driven conversational 3D woodworking & furniture modeler
Installation
pip install -e .
Usage
TODO: Add usage instructions
Documentation
Full documentation is available at: https://pages.brrd.tech/rob/woodshop/
Development
# Clone the repository
git clone https://gitea.brrd.tech/rob/woodshop.git
cd woodshop
# Create virtual environment
python -m venv .venv
source .venv/bin/activate
# Install for development
pip install -e ".[dev]"
# Run tests
pytest
License
TODO: Add license