itsulu-blog-publisher/addons/itsulu_blog_publisher/__manifest__.py
Nicholas Riegel 6702c8390e release: v0.5.0 — establish Odoo 19.0 branch (multi-version support)
Seed the 19.0 series branch from the 17.0 baseline and wire up the
per-Odoo-version structure:
- .odoo-series = 19.0; Dockerfile FROM odoo:19.0; manifest 19.0.0.5.0
- PORTING.md tracks the Odoo-19 API porting checklist
- README retargeted to 19.0 with a porting-in-progress notice
- CHANGELOG v0.5.0 entry

NOTE: code is seeded from 17.0 — the Odoo-19 port is NOT yet verified
(see PORTING.md). Not deploy-ready on a 19.0 instance until the suite
runs green there.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-05-30 11:15:50 -04:00

64 lines
2.5 KiB
Python

# -*- coding: utf-8 -*-
{
'name': 'ITSulu Blog Publisher',
# Odoo manifest version = <odoo_series>.<product_version>. Product version
# is tracked in the repo-root VERSION file (currently 0.4.8). See CLAUDE.md §15.
'version': '19.0.0.5.0',
'summary': 'AI-powered blog post generation with multi-LLM support, scheduling, and social media copy',
'description': """
ITSulu Blog Publisher
=====================
Replaces the CoWork/Windows VM blog pipeline with a fully server-side Odoo addon.
Features
--------
* On-demand blog generation via backend button or website toolbar
* Three configurable daily schedule slots (morning / afternoon / evening)
* Multi-LLM provider support: Anthropic Claude, OpenAI, Google Gemini, Ollama / Open WebUI
* Independent image generation provider (DALL·E, etc.)
* Single structured-JSON LLM call per post — lowest possible token usage
* Auto-populates all SEO fields (meta title, description, keywords, tags)
* Per-schedule / per-run social media platform enable/disable
(X/Twitter A+B, BlueSky A+B, Fediverse/Mastodon, LinkedIn)
* Notification email with social copy ready to paste — matches ITSulu Insights template
* Topic queue from ITSulu/company services — priority-ordered
* Editable system prompt and user prompt templates
* Full generation log with token usage, duration, error messages, and Retry button
* Supports Anthropic Pro user account API tokens (claude.ai/api)
""",
'author': 'ITSulu',
'website': 'https://itsulu.com',
'category': 'Website/Blog',
'license': 'LGPL-3',
'depends': [
'base',
'base_setup',
'mail',
'website',
'website_blog',
],
'data': [
'security/ir.model.access.csv',
'data/mail_template_data.xml',
'data/ir_cron_data.xml',
'views/generate_now_wizard_views.xml',
'views/blog_topic_views.xml',
'views/blog_schedule_views.xml',
'views/blog_generation_log_views.xml',
'views/blog_post_social_views.xml',
# 'views/website_blog_publisher_templates.xml', # TODO: Fix RELAXNG validation for Odoo 17 template syntax
'views/menu_views.xml',
],
'assets': {
'web.assets_backend': [
'itsulu_blog_publisher/static/src/css/blog_publisher.css',
],
'website.assets_frontend': [
'itsulu_blog_publisher/static/src/css/website_blog_publisher.css',
],
},
'installable': True,
'application': True,
'auto_install': False,
'images': ['static/description/banner.png'],
}