Initial project scaffold - Phase 1 MVP structure

Core modules:
- cli.py: Command-line interface with Click
- pipeline.py: Main orchestrator
- video_processor.py: Frame extraction with ffmpeg
- audio_analyzer.py: Whisper transcription
- vision_analyzer.py: Component detection (placeholder)
- doc_generator.py: Markdown + PDF output

Also includes:
- pyproject.toml with uv/hatch config
- Prompts for AI analysis
- Basic tests
- ROADMAP.md with 4-week plan
This commit is contained in:
Mario Lavoie
2026-01-27 20:05:34 +00:00
parent 621234cbdf
commit 1e94a98e5b
16 changed files with 1062 additions and 1 deletions

View File

@@ -0,0 +1,47 @@
You are analyzing a CAD model video walkthrough. Your task is to identify components and extract engineering information.
## Context
The engineer is walking through a CAD model, explaining the design. You will receive:
1. A frame from the video showing the CAD model
2. The transcript text around this timestamp
3. Any previously identified components
## Your Task
Analyze the frame and identify:
1. **Components visible** - What parts/assemblies can you see?
2. **Features** - Holes, threads, fillets, chamfers, ribs, etc.
3. **Materials** - Based on appearance or transcript mentions
4. **Functions** - What does each component do? (from transcript)
5. **Relationships** - How do components connect/interface?
## Output Format
Return a JSON object:
```json
{
"components": [
{
"name": "Component Name",
"confidence": 0.95,
"description": "Brief description",
"function": "What it does (from transcript)",
"material": "Material if mentioned or estimated",
"features": ["feature1", "feature2"],
"bounding_box": [x1, y1, x2, y2] // optional
}
],
"assembly_relationships": [
{"from": "Component A", "to": "Component B", "type": "bolted"}
],
"transcript_matches": [
{"component": "Component Name", "excerpt": "relevant quote from transcript"}
]
}
```
## Guidelines
- Be specific with component names (not just "part 1")
- Note standard parts (fasteners, bearings) with specifications if visible
- Extract material from transcript mentions ("aluminum", "steel", etc.)
- Identify function from verbal explanations
- Note manufacturing features (machined, cast, printed, etc.)

View File

@@ -0,0 +1,33 @@
You are generating an executive summary for CAD model documentation.
## Input
You will receive:
1. List of identified components with their functions and materials
2. Full transcript of the engineer's walkthrough
3. Assembly name (if identified)
## Your Task
Write a professional engineering summary that:
1. **Opens with purpose** - What is this assembly for?
2. **Describes key components** - Main functional elements
3. **Notes design decisions** - Why certain choices were made (from transcript)
4. **Mentions critical interfaces** - Key connection points
5. **Highlights constraints** - Size, weight, performance requirements mentioned
## Style Guidelines
- Professional but concise
- Use engineering terminology appropriately
- 2-4 paragraphs maximum
- Focus on information useful for:
- Design reviews (CDR)
- FEA setup (Atomizer)
- Manufacturing handoff
- Future maintenance
## Example Output
"This assembly provides structural support for a NEMA 23 stepper motor in a CNC gantry application. The design prioritizes vibration damping and thermal management while maintaining a compact envelope under 200mm.
The primary load path transfers motor torque reaction through the main bracket (6061 aluminum) into the gantry frame via 4x M6 fasteners. Neoprene isolators between the motor and bracket provide vibration decoupling at motor operating frequencies.
Key design decisions include the cantilevered configuration for belt access and the use of aluminum over steel to reduce gantry moving mass for improved acceleration performance."