Odoo Dev Helper
Odoo Dev Helper is a VS Code extension developed by Digital Planet to streamline Odoo module development. It provides a rich explorer, code generators, live log viewer, git management, and server control — all directly inside VS Code, including over Remote SSH.
Features
🗂️ Odoo Explorer
A dedicated sidebar panel that organizes your Odoo environment:
| Section |
Description |
| CUSTOM |
Your custom addon repositories (single-addon and multi-addon repos) |
| NATIVE |
Odoo CE, Enterprise, Themes, Industry — each configurable separately |
| FOCUS |
Pinned addons, folders, or files for quick access |
| HIDDEN |
Addons moved out of CUSTOM to reduce visual noise |
| CONFIG |
Quick access to odoo.conf |
| LOG |
Opens the live Log Viewer |
- Browse files inside any addon — expand to see the full folder structure
- Git status displayed per repo:
⎇ branch ↑2 ↓3 (ahead/behind commits)
- Auto-refresh — tree updates automatically when git state changes externally
- Search — filter addons by name in real time
- Reveal active file — when switching between open files, the explorer highlights the exact file in the tree (only if the explorer panel is already open)
➕ New Addon Wizard
4-step wizard to scaffold a new Odoo addon following Digital Planet standards:
- Identification — module name, version, summary, category
- Dependencies — base modules + business modules + custom dependencies
- Structure — choose which folders to generate (models, views, security, data, i18n, wizard, report, controllers, static)
- Initial Model — optionally generate the first model (new, inherit, or extend)
Generates __manifest__.py, __init__.py, and all selected folders with base files — with Digital Planet copyright headers, correct naming conventions, and proper data[] order.
⚙️ Addon Actions Panel
Per-addon code generator. Right-click any custom addon → Add to Addon... to open the panel.
Available generators:
| Generator |
What it creates |
| Model |
Python model class + __init__.py import |
| View |
Form + tree XML views |
| Security |
ir.model.access.csv + security XML |
| Wizard |
TransientModel + view |
| Report |
QWeb report template + action |
| Controller |
HTTP controller |
| OWL Component |
JavaScript OWL component + XML template |
| SCSS |
Stylesheet with asset bundle registration |
All generated files follow Digital Planet coding standards and are automatically registered in __manifest__.py.
📋 Live Log Viewer
Real-time Odoo log viewer with:
- Live tail — streams new log lines as they appear
- Color coding — ERROR (red), WARNING (orange), INFO (green), DEBUG (gray)
- Text filter — instant search across all visible lines
- Date/time range filter — filter by date range with timezone support
- Timezone conversion — enter times in your local timezone; the filter converts to UTC for accurate log matching
- Auto-scroll toggle
- Stats bar — total lines, visible lines, error/warning counts
🔀 Git Management
Available via right-click context menu and hover inline buttons on repos:
| Action |
Command |
| Fetch |
git fetch --all --prune |
| Pull |
git pull |
| Checkout Branch |
Branch picker → git checkout |
| Status |
git status |
| Log |
git log --oneline --graph --decorate -20 |
All commands run in a dedicated "Odoo Git" terminal. After checkout/pull, the tree refreshes automatically.
This release includes significant performance improvements:
- 99% faster configuration access — intelligent caching of VS Code settings with automatic invalidation
- 95% fewer git operations — 5-minute TTL cache for branch and ahead/behind info
- 90% reduction in tree refreshes — debounced event handling collapses rapid changes
- 70-80% faster addon panel load — lazy-loading of code generators
- 80% fewer filesystem scans — memoized tree structure between renders
- 60-70% reduction in log file I/O — debounced file watcher
Result: Noticeably faster UI responsiveness, lower CPU usage, and better experience with large addon repositories.
See PERFORMANCE_OPTIMIZATIONS.md for technical details.
🖥️ Server Control
Control the Odoo service directly from VS Code:
- Start / Stop / Restart via
systemctl (buttons in the Explorer toolbar)
- Status bar — shows live server status (
✓ Odoo [db] / ⏹ Odoo / ✗ Odoo FAILED)
- Auto-updates — after start/stop/restart, polls every 2 seconds until the expected state is reached
- Click status bar → quick actions menu
📦 Module Install / Update
Right-click any custom addon:
- Update Module (-u) — runs
odoo-bin -u <module> -d <database> --stop-after-init
- Option to stop → update → restart in one command
- Install Module (-i) — installs the module in the selected database
Commands run as the configured Odoo system user (sudo -u odoo) to avoid PostgreSQL role errors.
Requirements
- VS Code
^1.85.0
- Odoo installation on local machine or remote SSH server
- Git installed on the server
systemctl for server control (Linux)
Extension Settings
| Setting |
Default |
Description |
odooHelper.customAddonsPath |
"" |
Path to your custom addons root (e.g. /opt/odoo/extra-addons) |
odooHelper.nativePaths |
[{name,path}] |
Array of native addon sources: CE, Enterprise, Themes, Industry |
odooHelper.odooConfPath |
"" |
Path to odoo.conf (e.g. /etc/odoo/odoo.conf) |
odooHelper.odooLogPath |
"" |
Path to the Odoo log file (e.g. /var/log/odoo/odoo.log) |
odooHelper.odooVersion |
"17.0" |
Odoo version used in generated manifests |
odooHelper.serviceName |
"odoo" |
systemctl service name (e.g. odoo, odoo17) |
odooHelper.odooBinPath |
"/opt/odoo/odoo/odoo-bin" |
Absolute path to odoo-bin |
odooHelper.odooUser |
"odoo" |
Linux user that runs Odoo (sudo -u <user> odoo-bin ...) |
odooHelper.defaultDatabase |
"" |
Default database for install/update operations |
odooHelper.defaultAuthor |
"Digital Planet S de R L de CV" |
Author in generated manifests |
odooHelper.customSectionLabel |
"CUSTOM" |
Label for the Custom section |
odooHelper.nativeSectionLabel |
"NATIVE" |
Label for the Native section |
odooHelper.focusSectionLabel |
"FOCUS" |
Label for the Focus section |
odooHelper.hiddenSectionLabel |
"HIDDEN" |
Label for the Hidden section |
odooHelper.logMaxLines |
500 |
Maximum lines loaded in the Log Viewer |
Remote SSH Support
This extension is fully compatible with VS Code Remote SSH. All file system access, git operations, server control, and log viewing happen on the remote server. The webview panels (wizard, actions, log viewer) render locally.
Set extensionKind: ["workspace", "ui"] ensures the extension runs on the remote host when connected via SSH.
Publisher
Digital Planet S de R L de CV
Technology company headquartered in Honduras with over 25 years of experience delivering tangible results — agility, automation, control, and real savings for every client.
Tecnología y Servicio
License
Proprietary — Digital Planet S de R L de CV. All rights reserved.