Skip to main content
ClaudeWave
Slash Command136 repo starsupdated 4d ago

output-folder

Print + open the user-visible DMP output folder for a brand (~/Documents/DigitalMarketingPro/{brand}/). Direct answer to "where did my engagement deliverables save?

Install in Claude Code
Copy
mkdir -p ~/.claude/commands && curl -fsSL https://raw.githubusercontent.com/indranilbanerjee/digital-marketing-pro/HEAD/commands/output-folder.md -o ~/.claude/commands/output-folder.md
Then start a new Claude Code session; the slash command loads automatically.

output-folder.md

# Output Folder

Show the user where DMP actually saves the finished workflow deliverables, and (when supported) open that folder in the OS file manager. This is the answer to "where are my 50 engagement files?" — a real question from the v3.12.2-cycle user-team feedback ("dm pro also taking too long to process" was partly about not knowing whether anything had finished saving).

## Trigger

User runs `/digital-marketing-pro:output-folder`, or asks any variant of "where are my engagement files", "I can't find the campaign plan deliverables", "open output folder", "show me where it saved everything".

## Background

DMP writes two copies of every workflow artifact (v3.7.7+):

1. **Internal tracking copy** at `~/.claude-marketing/{brand}/output/{workflow}/{run_id}/...`. This is the system-of-record for `/digital-marketing-pro:status`, the checkpoint manager, audit history. It lives inside a dotfolder that Windows hides by default.
2. **User-visible published copy** at `~/Documents/DigitalMarketingPro/{brand}/{workflow}/{YYYY-MM}/{filename}` (or wherever `$DIGITAL_MARKETING_PRO_PUBLISH_DIR` points). This is the one to surface.

The published copy was added specifically because users running the 12-Part engagement workflow couldn't find the 50-60 deliverable files it produces. They were saving — just somewhere Explorer hid by default.

## Process

### Step 1: Resolve the path

The published-output directory is:

- `$DIGITAL_MARKETING_PRO_PUBLISH_DIR/{brand}/[{workflow}/]` if the env var is set, or
- `~/Documents/DigitalMarketingPro/{brand}/[{workflow}/]` otherwise.

Default to the active brand if no argument was provided. If neither is available, prompt: "Which brand's output folder? Run `/digital-marketing-pro:output-folder <brand>` or set up a brand with `/digital-marketing-pro:brand-setup`."

If the user supplied a workflow argument (e.g. `engagement`, `campaign-plan`, `seo-audit`), drill down to that subfolder.

### Step 2: Print the path + summary

Use `scripts/output-publisher.py where` to resolve and report — it returns both the visible path AND the internal tracking path AND whether the env var override is active:

```bash
python3 ${CLAUDE_PLUGIN_ROOT}/scripts/output-publisher.py where \
    --brand "{brand}" \
    --workflow "{workflow_or_omit}"
```

Show the user:

```
📂 DMP output folder for {brand}{workflow_phrase}:
   {visible_publish_dir}

   Subfolders are organised by workflow (engagement / campaign-plan /
   content-engine / seo-audit / competitor-analysis / campaign-audit /
   launch-campaign) and then by month (YYYY-MM). The newest run is in
   the latest month folder.

   Override the root with $DIGITAL_MARKETING_PRO_PUBLISH_DIR if you want
   outputs going to a shared team drive instead.
```

### Step 3: Open in the OS file manager

Use `scripts/output-publisher.py open` for the actual file-manager invocation (Windows `start` / macOS `open` / Linux `xdg-open`):

```bash
python3 ${CLAUDE_PLUGIN_ROOT}/scripts/output-publisher.py open \
    --brand "{brand}" \
    --workflow "{workflow_or_omit}"
```

If the open fails (headless environment, no associated handler), don't error — the user already has the path from Step 2.

### Step 4: If the folder doesn't exist yet

`~/Documents/DigitalMarketingPro/{brand}/` is created the first time a workflow's artifacts are published. If the folder is missing, say:

```
The output folder doesn't exist yet — that means no workflow has
finished and published for "{brand}" yet. Run a workflow first:

  /digital-marketing-pro:engagement          # full 12-Part Strategy Flow
  /digital-marketing-pro:campaign-plan       # multi-channel campaign
  /digital-marketing-pro:seo-audit           # SEO + AI visibility audit
  /digital-marketing-pro:competitor-analysis # deep-dive

Then come back here. Expected location after the first published run:
  {visible_publish_dir}
```

Do NOT create the folder pre-emptively.

## Configuration

Workspace-wide / agency-wide override:

```bash
# Persistent — add to shell profile
export DIGITAL_MARKETING_PRO_PUBLISH_DIR="$HOME/Dropbox/Marketing/DMP-Outputs"

# Per-run
DIGITAL_MARKETING_PRO_PUBLISH_DIR="/mnt/team-share/DMP" /digital-marketing-pro:engagement ...
```

The internal tracking copy (under `~/.claude-marketing/`) is unchanged — that stays as DMP's system-of-record. The env var only affects the visible publish copy.

## Related

- [`commands/engagement.md`](engagement.md), [`commands/campaign-plan.md`](campaign-plan.md), [`commands/content-engine.md`](content-engine.md), [`commands/seo-audit.md`](seo-audit.md) — the workflows that produce the files this command reveals
- [`commands/resume.md`](resume.md) — pick up an interrupted run
- [`scripts/output-publisher.py`](../scripts/output-publisher.py) — implements the dual-copy save + `where` + `open` subcommands
agency-operationsSubagent

Invoke when the user needs to manage multiple client brands, view portfolio-level dashboards, generate client reports, manage SOPs, switch credential profiles, assign team tasks, configure regions, or generate executive summaries. Triggers on requests involving multi-client management, agency workflows, client onboarding, or portfolio oversight.

analytics-analystSubagent

Invoke when the user needs help with marketing measurement, KPI definition, dashboard design, attribution modeling, performance analysis, anomaly detection, competitive benchmarking, or translating data into marketing decisions. Triggers on requests involving metrics, reporting, analytics setup, or data interpretation.

brand-guardianSubagent

Invoke when marketing content needs quality control review — brand voice consistency checks, regulatory compliance verification (GDPR, CAN-SPAM, CCPA, HIPAA, FTC, industry-specific), accessibility auditing (WCAG 2.1), inclusive language review, or brand safety assessment. Automatically invoked as a final review step before any content is published or delivered.

competitive-intelSubagent

Invoke when the user needs competitor analysis — content strategy teardowns, SEO gap analysis, paid ad analysis from ad libraries, social media benchmarking, AI visibility comparisons, pricing and positioning research, or market landscape mapping. Triggers on requests mentioning competitors, competitive gaps, market analysis, or benchmarking.

competitor-intelligenceSubagent

Use when the task requires ongoing competitive monitoring, competitor change detection, share of voice tracking, competitive alerts, ad monitoring, price monitoring, win/loss analysis, or competitive narrative mapping.

content-creatorSubagent

Invoke when the user needs any form of marketing content created or refined — blog posts, ad copy, email campaigns, social media posts, landing page copy, press releases, video scripts, product descriptions, or newsletter content. Triggers on requests to write, draft, rewrite, or improve marketing copy.

crm-managerSubagent

Invoke when the user needs to manage CRM operations — creating contacts, importing leads, updating deals, syncing campaign data, segmenting audiences, managing pipelines, or connecting marketing data to Salesforce, HubSpot, Zoho, or Pipedrive. Triggers on requests involving CRM data, lead management, pipeline updates, or sales-marketing alignment.

cro-specialistSubagent

Invoke when the user needs help with conversion rate optimization — landing page audits, A/B test design, form optimization, pricing page strategy, checkout flow improvement, personalization, statistical significance calculations, page speed impact analysis, or mobile conversion optimization. Triggers on requests involving conversions, landing pages, A/B testing, or optimization experiments.