Commit Graph

6 Commits (f4e642240c9238cf32a13b8ff47349f68230d3e3)

Author SHA1 Message Date
PeninsulaInd e0c19705b1 Add company name alias matching to PR pipeline
PR skill now matches ClickUp Client names against Aliases field in
companies.md and uses the canonical ## heading as the company name.
Fixes issue where PRs used ClickUp dropdown names (e.g. "Elasto Valve
Rubber (EVR)") instead of the correct company name ("EVR Products").
Added James Eagen Sons stub entry.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-09 10:49:39 -05:00
PeninsulaInd 80535d6c9e Add client delivery pipeline: Google Drive upload + Gmail drafts + reply tracking
Automates the PR delivery workflow: uploads .docx to Google Drive as Google Docs,
creates Gmail drafts with template-based emails and Ref: CU-<task_id> tracking tags,
and polls for client replies to update ClickUp tasks. Includes contact directory
with alias support, email template system, and manual CLI scripts for retries.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-09 10:26:17 -05:00
PeninsulaInd e4c7bc8e02 Add create_task_set CLI script + update company directory
New script replaces inline task creation commands with a proper CLI.
Supports all task types (NEW/OPT/LINKS/PR) with validation, dependencies,
per-type tag/date overrides, and custom fields.

Updated companies.md: renamed RPM Mechanical to RPM Industrial Rubber Parts,
added Royal Purple Industrial entry.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-03 09:40:31 -05:00
PeninsulaInd 0bef1e71b3 1.1: Delete dead code and fix all lint errors
Remove unused modules that were never called at startup:
- cheddahbot/skills/__init__.py (dead @skill decorator system)
- cheddahbot/providers/__init__.py (empty placeholder)
- cheddahbot/tools/build_skill.py (depends on dead skills system)
- cheddahbot/tools/build_tool.py (security risk: generates arbitrary Python)

Also fix all pre-existing ruff lint errors across the codebase:
- Fix import sorting, unused imports, line length violations
- Fix type comparisons (use `is` instead of `==`)
- Fix implicit Optional types (dict -> dict | None)
- Fix unused variables, ambiguous variable names
- Apply ruff format for consistent style

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-17 09:56:36 -06:00
PeninsulaInd 5e9cef5e39 Add submit_press_release tool with Press Advantage API integration
Adds PressAdvantageClient API wrapper and submit_press_release tool that
posts finished press releases to PA as drafts. Auto-constructs SEO links
(brand+keyword → IMSURL, company name → SocialURL/GBP/homepage) with
fuzzy anchor matching and warnings when phrases can't be found. The PR
writing prompt now requests anchor text phrases and validates them after
generation.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-16 17:37:41 -06:00
PeninsulaInd b3140d3522 Add autonomous press release pipeline tool
Implements write_press_releases tool that generates 7 headlines via chat
brain, AI-judges the best 2, writes 2 full press releases via execution
brain, and generates JSON-LD schemas via Sonnet with WebSearch. Saves all
output files to data/generated/press_releases/.

Also adds tools/model pass-through in agent and LLM layers, fixes Windows
command line length limit by piping prompts via stdin, and updates model
references to current versions.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-15 18:04:29 -06:00