Files
SERVtomaste/docs/MEGA-PLAN-BRAIN-SYSTEM.md
Anto01 57bcfa4a9a Add Solidworks licenses, scripts, and update server docs
- Add Solidworks license files and install guides
- Add PowerShell privacy lockdown scripts for Solidworks telemetry
- Add Siemens License Server v5.1 binary for NX
- Update DALIDOU-SERVER.md with storage layout, backup system, and DNS fixes
- Add MEGA-PLAN-BRAIN-SYSTEM.md for unified knowledge management
- Add Claude Code local settings

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-25 11:56:23 -05:00

23 KiB

MEGA PLAN: Antoine's Unified Brain System

For Claude Code: This document contains complete instructions for setting up Antoine's knowledge management, code, and document system on his dalidou server.


Overview

Who is Antoine?

  • Name: Antoine Bherer-Simard
  • Company: Atomaste Inc. (FEA/optimization consulting)
  • Product in development: Atomizer (FEA optimization framework)
  • Location: Rouyn-Noranda, Quebec
  • Server: dalidou (192.168.86.50)

Objective

Create a unified system with 3 layers:

  1. brain/ → PKM (Personal Knowledge Management) - Markdown notes, documentation, journal
  2. code/ → Version-controlled source code with Git/Gitea
  3. storage/ → Binary files (PDFs, invoices, legal documents) via Seafile

All accessible via VSCode with contextual workspaces, automatically synchronized, and optimized for working with Claude.


Target Architecture

Folder Structure

/home/antoine/
├── brain/                              # PKM (Syncthing) - MARKDOWN NOTES
│   ├── .obsidian/                      # Obsidian config
│   ├── _templates/                     # Reusable templates
│   │   ├── daily.md
│   │   ├── client.md
│   │   ├── meeting.md
│   │   └── project.md
│   │
│   ├── atomizer/                       # Atomizer product documentation
│   │   ├── CLAUDE.md                   # Context for Claude
│   │   ├── 00-master-plan.md           # Central document
│   │   ├── architecture.md
│   │   ├── roadmap.md
│   │   ├── dev-decisions.md
│   │   ├── api/
│   │   │   └── optimizer.md
│   │   └── reports/                    # Jupyter notebook exports
│   │
│   ├── atomaste/                       # Atomaste Business
│   │   ├── CLAUDE.md
│   │   ├── overview.md
│   │   ├── clients/
│   │   │   ├── _index.md               # Client list
│   │   │   ├── _template-client.md
│   │   │   └── starspec/
│   │   │       ├── overview.md
│   │   │       ├── meetings/
│   │   │       └── projects/
│   │   ├── finances/
│   │   │   ├── CLAUDE.md
│   │   │   ├── rates.md
│   │   │   ├── 2024-summary.md
│   │   │   ├── 2025-budget.md
│   │   │   └── quarterly/
│   │   │       └── 2025-Q1.md
│   │   └── marketing/
│   │       └── website-content.md
│   │
│   ├── engineering/                    # Technical knowledge base
│   │   ├── CLAUDE.md
│   │   ├── _index.md
│   │   ├── fea/
│   │   │   ├── nastran-tips.md
│   │   │   ├── mesh-convergence.md
│   │   │   └── nonlinear-analysis.md
│   │   ├── optimization/
│   │   │   ├── optuna-guide.md
│   │   │   ├── bayesian-methods.md
│   │   │   └── multi-objective.md
│   │   └── cad/
│   │       ├── nx-simcenter.md
│   │       └── solidworks-api.md
│   │
│   ├── personal/                       # Personal life
│   │   ├── CLAUDE.md
│   │   └── goals/
│   │
│   ├── journal/                        # Daily notes
│   │   └── 2025/
│   │       └── 01/
│   │           └── .gitkeep
│   │
│   └── inbox/                          # Quick capture
│       └── .gitkeep
│
├── code/                               # CODE (Git/Gitea)
│   ├── atomizer/                       # Main product
│   │   ├── CLAUDE.md
│   │   ├── README.md
│   │   ├── src/
│   │   │   └── atomizer/
│   │   │       └── __init__.py
│   │   ├── tests/
│   │   │   └── .gitkeep
│   │   └── notebooks/
│   │       ├── exploration/
│   │       └── examples/
│   │
│   ├── finance/                        # Financial tools
│   │   ├── CLAUDE.md
│   │   ├── README.md
│   │   ├── tax_calculator/
│   │   │   └── __init__.py
│   │   ├── invoice_generator/
│   │   │   └── __init__.py
│   │   └── reports/
│   │       └── .gitkeep
│   │
│   ├── tools/                          # Miscellaneous tools
│   │   ├── CLAUDE.md
│   │   ├── scripts/
│   │   │   └── .gitkeep
│   │   └── mcp-servers/
│   │       └── .gitkeep
│   │
│   └── server/                         # dalidou server config
│       ├── CLAUDE.md
│       ├── docker-compose/
│       │   └── .gitkeep
│       └── configs/
│           └── .gitkeep
│
├── storage/                            # BINARY FILES (Seafile)
│   └── atomaste/
│       ├── clients/
│       │   └── starspec/
│       │       ├── contracts/
│       │       ├── invoices/
│       │       └── correspondence/
│       ├── finances/
│       │   ├── invoices-received/
│       │   │   ├── 2024/
│       │   │   └── 2025/
│       │   ├── taxes/
│       │   │   ├── 2024/
│       │   │   └── 2025/
│       │   ├── bank-statements/
│       │   └── receipts/
│       ├── legal/
│       │   ├── incorporation/
│       │   ├── contracts/
│       │   └── insurance/
│       └── archive/
│
└── workspaces/                         # VSCode workspace files
    ├── atomizer-dev.code-workspace
    ├── atomaste-business.code-workspace
    ├── atomaste-finance.code-workspace
    ├── engineering-kb.code-workspace
    ├── daily-assistant.code-workspace
    ├── server-admin.code-workspace
    └── everything.code-workspace

Required Services on dalidou

Existing Services (verify they're running)

  • Syncthing: For syncing brain/ (sync.dalidou.home or port 8384)
  • Seafile: For storage/ (cloud.dalidou.home or port 8083)
  • Gitea: For code/ (git.dalidou.home or port 3000)
  • Caddy: Reverse proxy

Syncthing Configuration

The /home/antoine/brain/ folder must be shared via Syncthing:

  • Bidirectional sync with Antoine's laptop
  • Later: sync with Android (Pixel)
  • Folder Type: "Send & Receive"

CLAUDE.md File Contents

These files provide context to Claude for each section.

brain/atomizer/CLAUDE.md

# Context: Atomizer Development

## What is Atomizer?
Atomizer is a Python optimization framework for FEA (Finite Element Analysis).
It uses Optuna with TPE sampler to optimize CAD geometries via NX Simcenter.

## Tech Stack
- Python 3.11+
- Optuna (TPE, CMA-ES samplers)
- NX Simcenter API
- Nastran solver

## Locations
- **Source code**: ~/code/atomizer/
- **Documentation**: This folder (~/brain/atomizer/)
- **Jupyter Notebooks**: ~/code/atomizer/notebooks/

## Key files
- `00-master-plan.md` - Overview and roadmap
- `architecture.md` - Technical architecture
- `dev-decisions.md` - Design decisions and conventions
- `roadmap.md` - Version planning

## Code Conventions
- Naming: snake_case for functions, PascalCase for classes
- Tests: pytest, minimum 80% coverage on core/
- Docstrings: Google style
- Type hints: mandatory

## Current focus
See `00-master-plan.md` section "Current Focus"

brain/atomaste/CLAUDE.md

# Context: Atomaste Business

## What is Atomaste?
Atomaste Inc. is a mechanical engineering consulting company
specializing in finite element analysis (FEA) and optimization.

## Owner
Antoine Bherer-Simard
Rouyn-Noranda, Quebec, Canada

## Services
- FEA Analysis (stress, thermal, modal)
- Design optimization
- Custom tool development (Atomizer)

## Structure
- `clients/` - Folders per client
- `finances/` - Financial notes (PDFs are in ~/storage/atomaste/finances/)
- `marketing/` - Marketing content, website

## Important
- PDF/binary documents are in ~/storage/atomaste/, NOT here
- This folder contains MARKDOWN NOTES only
- To reference a file: use a link to storage/

brain/atomaste/finances/CLAUDE.md

# Context: Atomaste Finances

## Structure

- **Notes** (this folder): Summaries, analyses, budgets in markdown
- **Code** (~/code/finance/): Scripts for calculations, automated reports
- **Documents** (~/storage/atomaste/finances/): PDFs, invoices, bank statements

## Fiscal info
- Fiscal year: January - December
- GST/QST: Quarterly filings
- T2 (corporate tax): Annual, deadline 6 months after fiscal year end

## Rates
See `rates.md` for hourly rates and packages.

## Tools
- ~/code/finance/tax_calculator/ - Estimated tax calculation
- ~/code/finance/invoice_generator/ - Invoice generation
- ~/code/finance/reports/ - Financial report scripts

## Convention
- Amounts are in CAD unless otherwise noted
- Date format: YYYY-MM-DD

brain/engineering/CLAUDE.md

# Context: Engineering Knowledge Base

## Purpose
Antoine's technical knowledge base covering:
- Finite Element Analysis (FEA)
- Optimization
- CAD/CAM

## Structure
- `fea/` - Nastran tips and guides, meshing, analyses
- `optimization/` - Optuna, Bayesian methods, multi-objective
- `cad/` - NX Simcenter, SolidWorks, APIs

## Usage
These notes are technical references accumulated over time.
They can be linked from Atomizer docs or client projects.

## Conventions
- Include code examples when relevant
- Link to official documentation
- Update when new discoveries are made

brain/personal/CLAUDE.md

# Context: Personal

## Note
This folder contains Antoine's personal notes.
Treat with discretion and respect for privacy.

## Typical Content
- Personal goals
- Reflections
- Family notes

## Expected Behavior
- Do not share contents of this folder
- Do not include in reports or exports
- Help only if explicitly requested

code/atomizer/CLAUDE.md

# Context: Atomizer Codebase

## Repository
- Git remote: gitea.dalidou.home/antoine/atomizer
- Main branch: main

## Structure

atomizer/ ├── src/atomizer/ # Main source code │ ├── core/ # Optimization engine │ ├── samplers/ # Optuna wrappers (TPE, CMA-ES) │ ├── interfaces/ # CAD connectors (NX, SolidWorks) │ └── utils/ # Nastran parsing, plotting ├── tests/ # pytest tests ├── notebooks/ # Jupyter notebooks │ ├── exploration/ # Exploratory work │ └── examples/ # Documented examples └── configs/ # YAML configuration files


## Development workflow
1. Read ~/brain/atomizer/00-master-plan.md for context
2. Create a branch for the feature
3. Implement with tests
4. Document in ~/brain/atomizer/ if necessary
5. PR to main

## Testing
```bash
cd ~/code/atomizer
pytest tests/ -v

Associated Documentation

See ~/brain/atomizer/ for complete documentation.


### code/finance/CLAUDE.md

```markdown
# Context: Finance Tools

## Purpose
Python tools for Atomaste financial management.

## Modules
- `tax_calculator/` - Tax estimation (federal, provincial, corporate)
- `invoice_generator/` - PDF invoice generation
- `reports/` - Automated financial report scripts

## Usage
These tools work with:
- Notes in ~/brain/atomaste/finances/
- Documents in ~/storage/atomaste/finances/

## Example
```python
from tax_calculator import estimate_quarterly_tax
from invoice_generator import create_invoice

# Generate an invoice
create_invoice(
    client="Starspec",
    items=[{"desc": "FEA Analysis", "hours": 40, "rate": 150}],
    output="~/storage/atomaste/clients/starspec/invoices/2025-01.pdf"
)

### code/tools/CLAUDE.md

```markdown
# Context: Tools & Scripts

## Purpose
Collection of utility tools and scripts.

## Structure
- `scripts/` - One-off bash/python scripts
- `mcp-servers/` - Custom MCP servers for Claude

## Guidelines
- Document each script with a header
- Include usage examples
- Test before committing

code/server/CLAUDE.md

# Context: Server Configuration (dalidou)

## Server info
- Hostname: dalidou
- IP: 192.168.86.50
- OS: Linux (probably Ubuntu)
- Tailscale: Enabled

## Docker Services
- Syncthing (sync.dalidou.home)
- Seafile (cloud.dalidou.home)
- Gitea (git.dalidou.home)
- Immich (photos.dalidou.home)
- Paperless (docs.dalidou.home)
- Caddy (reverse proxy)

## Structure
- `docker-compose/` - docker-compose files per service
- `configs/` - Configuration files

## Access
- Local: 192.168.86.50
- External: Via Tailscale (100.x.x.x)

## Backup
TODO: Document backup strategy

Templates

_templates/daily.md

# {{date}}

## Daily Focus

- [ ]

## Notes

## Links

## Accomplished

## Tomorrow

_templates/client.md

# {{client_name}}

## Overview

- **Contact**:
- **Email**:
- **Since**:
- **Status**: Active / Inactive

## Projects

| Project | Status | Notes |
|---------|--------|-------|
| | | |

## Documents

See: [storage/atomaste/clients/{{client_name}}/](file:///home/antoine/storage/atomaste/clients/{{client_name}}/)

## Notes

## Interaction History

### {{date}}
-

_templates/meeting.md

# Meeting: {{title}}

**Date**: {{date}}
**Participants**:
**Type**: Client / Internal / Other

## Agenda

1.

## Notes

## Actions

- [ ] @antoine:
- [ ] @other:

## Next Meeting

_templates/project.md

# Project: {{project_name}}

## Overview

- **Client**: [[clients/{{client}}]]
- **Start date**:
- **Status**: Planning / Active / On Hold / Completed
- **Budget**:

## Objectives

1.

## Deliverables

- [ ]

## Technical Notes

## Timeline

| Phase | Start | End | Status |
|-------|-------|-----|--------|
| | | | |

## Documents

- Contract: [link](file:///home/antoine/storage/...)
-

## Log

### {{date}}
-

VSCode Workspaces

workspaces/atomizer-dev.code-workspace

{
  "folders": [
    {
      "path": "../code/atomizer",
      "name": "Code - Atomizer"
    },
    {
      "path": "../brain/atomizer",
      "name": "Docs - Atomizer"
    },
    {
      "path": "../brain/engineering",
      "name": "Engineering KB"
    }
  ],
  "settings": {
    "files.exclude": {
      "**/__pycache__": true,
      "**/.pytest_cache": true,
      "**/node_modules": true,
      "**/.git": true
    },
    "python.defaultInterpreterPath": "python3"
  },
  "extensions": {
    "recommendations": [
      "ms-python.python",
      "ms-toolsai.jupyter"
    ]
  }
}

workspaces/atomaste-business.code-workspace

{
  "folders": [
    {
      "path": "../brain/atomaste",
      "name": "Atomaste Business"
    },
    {
      "path": "../brain/atomizer",
      "name": "Products"
    },
    {
      "path": "../storage/atomaste",
      "name": "Documents"
    }
  ],
  "settings": {
    "files.exclude": {
      "**/.obsidian": true
    }
  }
}

workspaces/atomaste-finance.code-workspace

{
  "folders": [
    {
      "path": "../brain/atomaste/finances",
      "name": "Finance Notes"
    },
    {
      "path": "../code/finance",
      "name": "Finance Code"
    },
    {
      "path": "../storage/atomaste/finances",
      "name": "Finance Documents"
    }
  ],
  "settings": {
    "files.exclude": {
      "**/__pycache__": true
    }
  }
}

workspaces/engineering-kb.code-workspace

{
  "folders": [
    {
      "path": "../brain/engineering",
      "name": "Engineering KB"
    },
    {
      "path": "../code/atomizer/notebooks",
      "name": "Notebooks"
    }
  ],
  "settings": {}
}

workspaces/daily-assistant.code-workspace

{
  "folders": [
    {
      "path": "../brain/journal",
      "name": "Journal"
    },
    {
      "path": "../brain/inbox",
      "name": "Inbox"
    },
    {
      "path": "../brain/atomaste/clients",
      "name": "Clients"
    },
    {
      "path": "../brain/personal",
      "name": "Personal"
    }
  ],
  "settings": {}
}

workspaces/server-admin.code-workspace

{
  "folders": [
    {
      "path": "../code/server",
      "name": "Server Config"
    },
    {
      "path": "../code/tools",
      "name": "Tools"
    }
  ],
  "settings": {}
}

workspaces/everything.code-workspace

{
  "folders": [
    {
      "path": "../brain",
      "name": "Brain (PKM)"
    },
    {
      "path": "../code",
      "name": "Code"
    },
    {
      "path": "../storage",
      "name": "Storage"
    }
  ],
  "settings": {
    "files.exclude": {
      "**/.obsidian": true,
      "**/__pycache__": true,
      "**/.git": true
    }
  }
}

Atomizer Master Plan File

brain/atomizer/00-master-plan.md

# Atomizer Master Plan

> **For Claude**: This document is the entry point for understanding Atomizer.
> Read it first before working on the project.

**Last updated**: {{date}}

---

## Quick Context

**Atomizer** is a Python optimization framework for FEA (Finite Element Analysis).

| Aspect | Detail |
|--------|--------|
| Stack | Python 3.11+, Optuna, NX Simcenter, Nastran |
| Code | ~/code/atomizer/ |
| Docs | This folder (~/brain/atomizer/) |
| Git | gitea.dalidou.home/antoine/atomizer |

---

## Architecture

See [[architecture]] for complete details.

atomizer/ ├── core/ # Optimization engine ├── samplers/ # TPE, CMA-ES wrappers ├── interfaces/ # NX, SolidWorks connectors └── utils/ # Nastran parsing, plotting


### Key Classes

- `Optimizer` - Main entry point
- `NXInterface` - Communication with NX Simcenter
- `NastranParser` - Reading .f06 results

---

## Roadmap

See [[roadmap]] for details.

### v0.3 (current)
- [x] Functional TPE sampler
- [x] Basic NX integration
- [ ] Multi-objective optimization
- [ ] Visualization improvements

### v0.4 (planned)
- [ ] SolidWorks interface
- [ ] Parallel evaluations
- [ ] Web dashboard

### Future
- [ ] Cloud computing support
- [ ] Plugin marketplace

---

## Conventions

See [[dev-decisions]] for decision history.

- **Naming**: snake_case (functions), PascalCase (classes)
- **Config**: YAML files in `configs/`
- **Tests**: pytest, minimum 80% coverage on core/
- **Docstrings**: Google style
- **Type hints**: Mandatory

---

## Navigation

| Topic | Note | Code |
|-------|------|------|
| Architecture | [[architecture]] | `~/code/atomizer/src/` |
| Roadmap | [[roadmap]] | - |
| Decisions | [[dev-decisions]] | - |
| API | [[api/optimizer]] | `src/atomizer/core/` |
| NX Integration | [[../engineering/cad/nx-simcenter]] | `interfaces/nx.py` |
| Optuna | [[../engineering/optimization/optuna-guide]] | `samplers/` |

---

## Current Focus

<!-- UPDATE REGULARLY -->

**Working on**:
**Blockers**:
**Next step**:

**Recent journal**: [[../../journal/2025/01/]]

---

## For Claude

When working on Atomizer:

1. **Start here** - Read this file for context
2. **Check conventions** - [[dev-decisions]]
3. **Code is in** - `~/code/atomizer/`
4. **Notebooks are in** - `~/code/atomizer/notebooks/`
5. **Document important changes** in this folder

### Useful Commands

```bash
# Tests
cd ~/code/atomizer && pytest tests/ -v

# Launch a notebook
cd ~/code/atomizer/notebooks && jupyter lab

# Git status
cd ~/code/atomizer && git status

---

## Installation Instructions

### Step 1: Create Folder Structure

```bash
# On dalidou, as antoine
cd /home/antoine

# Create brain/
mkdir -p brain/{_templates,atomizer/{api,reports},atomaste/{clients/starspec/{meetings,projects},finances/quarterly,marketing},engineering/{fea,optimization,cad},personal/goals,journal/2025/01,inbox}

# Create code/
mkdir -p code/{atomizer/{src/atomizer,tests,notebooks/{exploration,examples},configs},finance/{tax_calculator,invoice_generator,reports},tools/{scripts,mcp-servers},server/{docker-compose,configs}}

# Create storage/ (if not already mounted via Seafile)
mkdir -p storage/atomaste/{clients/starspec/{contracts,invoices,correspondence},finances/{invoices-received/{2024,2025},taxes/{2024,2025},bank-statements,receipts},legal/{incorporation,contracts,insurance},archive}

# Create workspaces/
mkdir -p workspaces

Step 2: Create Base Files

Create all files listed in this document:

  • All CLAUDE.md files
  • All templates in _templates/
  • All .code-workspace files in workspaces/
  • The 00-master-plan.md
  • .gitkeep files for empty folders

Step 3: Initialize Git Repos

# Atomizer (if it doesn't already exist)
cd ~/code/atomizer
git init
git remote add origin git@gitea.dalidou.home:antoine/atomizer.git

# Finance tools
cd ~/code/finance
git init
git remote add origin git@gitea.dalidou.home:antoine/finance-tools.git

# Tools
cd ~/code/tools
git init
git remote add origin git@gitea.dalidou.home:antoine/tools.git

# Server config
cd ~/code/server
git init
git remote add origin git@gitea.dalidou.home:antoine/server-config.git

Step 4: Configure Syncthing

  1. Access Syncthing on dalidou (sync.dalidou.home or :8384)
  2. Add /home/antoine/brain/ folder as a shared folder
  3. Name the folder "brain" or "antoine-brain"
  4. Configure as "Send & Receive"
  5. Add devices (Antoine's laptop, later: Android)

Step 5: Verify Seafile

  1. Ensure Seafile is mounted at /home/antoine/storage/ (or create a symlink)
  2. If Seafile uses a different path, adjust paths in templates

Step 6: Configure Obsidian

  1. Open Obsidian
  2. Open vault: /home/antoine/brain/
  3. Enable recommended plugins:
    • Daily Notes
    • Templates
    • Backlinks
  4. Configure templates folder: _templates/

Validation Checklist

After installation, verify:

  • Folder structure created
  • All CLAUDE.md files in place
  • Templates created in brain/_templates/
  • Workspaces created in workspaces/
  • 00-master-plan.md created
  • Syncthing configured for brain/
  • Seafile accessible via storage/
  • Git repos initialized in code/
  • Obsidian can open brain/ as vault
  • VSCode can open .code-workspace files

Reference Information

dalidou Server

  • Local IP: 192.168.86.50
  • Tailscale: 100.x.x.x (check with tailscale ip)
  • Services:
    • Syncthing: sync.dalidou.home / :8384
    • Seafile: cloud.dalidou.home / :8083
    • Gitea: git.dalidou.home / :3000
    • Caddy: reverse proxy

Maintenance

Daily

  • Use the daily.md template for daily notes
  • Capture ideas in inbox/

Weekly

  • Review inbox/ and classify notes
  • Update "Current Focus" in master plan
  • Commit/push code/ changes

Monthly

  • Review and update CLAUDE.md files if needed
  • Archive old journals
  • Verify backups

This document was created on {{date}} to initialize Antoine's knowledge management system.