ima-claude 2.18.0 → 2.25.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +55 -9
- package/dist/cli.js +5 -1
- package/package.json +1 -1
- package/plugins/ima-claude/.claude-plugin/plugin.json +2 -2
- package/plugins/ima-claude/agents/explorer.md +29 -15
- package/plugins/ima-claude/agents/implementer.md +58 -13
- package/plugins/ima-claude/agents/memory.md +19 -19
- package/plugins/ima-claude/agents/reviewer.md +56 -34
- package/plugins/ima-claude/agents/tester.md +59 -16
- package/plugins/ima-claude/agents/wp-developer.md +66 -21
- package/plugins/ima-claude/hooks/bootstrap.sh +42 -44
- package/plugins/ima-claude/hooks/prompt_coach_digest.md +14 -17
- package/plugins/ima-claude/hooks/prompt_coach_system.md +10 -12
- package/plugins/ima-claude/personalities/README.md +17 -6
- package/plugins/ima-claude/personalities/enable-efficient.md +61 -0
- package/plugins/ima-claude/personalities/enable-terse.md +71 -0
- package/plugins/ima-claude/skills/agentic-workflows/SKILL.md +97 -0
- package/plugins/ima-claude/skills/agentic-workflows/references/phases/deliver.md +181 -0
- package/plugins/ima-claude/skills/agentic-workflows/references/phases/draft.md +99 -0
- package/plugins/ima-claude/skills/agentic-workflows/references/phases/gather.md +130 -0
- package/plugins/ima-claude/skills/agentic-workflows/references/phases/outline.md +106 -0
- package/plugins/ima-claude/skills/agentic-workflows/references/phases/review.md +137 -0
- package/plugins/ima-claude/skills/agentic-workflows/references/standards/draft-format.md +159 -0
- package/plugins/ima-claude/skills/agentic-workflows/references/standards/editorial-standards.md +160 -0
- package/plugins/ima-claude/skills/agentic-workflows/references/standards/outline-format.md +110 -0
- package/plugins/ima-claude/skills/agentic-workflows/references/templates/avada-construction-guide.md +263 -0
- package/plugins/ima-claude/skills/agentic-workflows/references/templates/avada-webinar-example.txt +275 -0
- package/plugins/ima-claude/skills/agentic-workflows/references/templates/cta-block-catalog.md +169 -0
- package/plugins/ima-claude/skills/agentic-workflows/references/templates/espo-email-preparation.md +241 -0
- package/plugins/ima-claude/skills/agentic-workflows/references/templates/webinar-recap-email-espo.html +339 -0
- package/plugins/ima-claude/skills/agentic-workflows/references/templates/webinar-reminder-email-espo.html +458 -0
- package/plugins/ima-claude/skills/agentic-workflows/references/workflows/editorial/webinar-summary.md +81 -0
- package/plugins/ima-claude/skills/architect/SKILL.md +54 -168
- package/plugins/ima-claude/skills/compound-bridge/SKILL.md +41 -94
- package/plugins/ima-claude/skills/design-to-code/SKILL.md +91 -0
- package/plugins/ima-claude/skills/design-to-code/references/guardrails.md +46 -0
- package/plugins/ima-claude/skills/design-to-code/references/phase-a-design-to-prompt.md +141 -0
- package/plugins/ima-claude/skills/design-to-code/references/phase-b-prompt-to-code.md +155 -0
- package/plugins/ima-claude/skills/design-to-code/references/prompt-template.md +95 -0
- package/plugins/ima-claude/skills/discourse/SKILL.md +79 -194
- package/plugins/ima-claude/skills/discourse-admin/SKILL.md +41 -103
- package/plugins/ima-claude/skills/docs-organize/SKILL.md +63 -203
- package/plugins/ima-claude/skills/ember-discourse/SKILL.md +90 -200
- package/plugins/ima-claude/skills/espocrm/SKILL.md +14 -23
- package/plugins/ima-claude/skills/espocrm-api/SKILL.md +79 -192
- package/plugins/ima-claude/skills/functional-programmer/SKILL.md +33 -237
- package/plugins/ima-claude/skills/gh-cli/SKILL.md +26 -65
- package/plugins/ima-claude/skills/ima-bootstrap/SKILL.md +71 -104
- package/plugins/ima-claude/skills/ima-bootstrap/references/ima-brand.md +32 -22
- package/plugins/ima-claude/skills/ima-brand/SKILL.md +18 -23
- package/plugins/ima-claude/skills/ima-copywriting/SKILL.md +68 -179
- package/plugins/ima-claude/skills/ima-doc2pdf/SKILL.md +32 -102
- package/plugins/ima-claude/skills/ima-editorial-scorecard/SKILL.md +38 -63
- package/plugins/ima-claude/skills/ima-editorial-workflow/SKILL.md +69 -114
- package/plugins/ima-claude/skills/ima-email-creator/SKILL.md +16 -22
- package/plugins/ima-claude/skills/ima-forms-expert/SKILL.md +21 -37
- package/plugins/ima-claude/skills/jira-checkpoint/SKILL.md +39 -120
- package/plugins/ima-claude/skills/jquery/SKILL.md +107 -233
- package/plugins/ima-claude/skills/js-fp/SKILL.md +75 -296
- package/plugins/ima-claude/skills/js-fp-api/SKILL.md +52 -162
- package/plugins/ima-claude/skills/js-fp-react/SKILL.md +47 -270
- package/plugins/ima-claude/skills/js-fp-vue/SKILL.md +55 -209
- package/plugins/ima-claude/skills/js-fp-wordpress/SKILL.md +59 -204
- package/plugins/ima-claude/skills/livecanvas/SKILL.md +19 -32
- package/plugins/ima-claude/skills/mcp-atlassian/SKILL.md +146 -136
- package/plugins/ima-claude/skills/mcp-atlassian/references/direct-api-attachments.md +115 -0
- package/plugins/ima-claude/skills/mcp-atlassian/references/direct-api-auth.md +103 -0
- package/plugins/ima-claude/skills/mcp-atlassian/references/direct-api-bulk.md +149 -0
- package/plugins/ima-claude/skills/mcp-atlassian/references/direct-api-misc.md +195 -0
- package/plugins/ima-claude/skills/mcp-atlassian/references/direct-api-sprints.md +158 -0
- package/plugins/ima-claude/skills/mcp-context7/SKILL.md +32 -64
- package/plugins/ima-claude/skills/mcp-gitea/SKILL.md +98 -188
- package/plugins/ima-claude/skills/mcp-github/SKILL.md +60 -124
- package/plugins/ima-claude/skills/mcp-memory/SKILL.md +1 -177
- package/plugins/ima-claude/skills/mcp-qdrant/SKILL.md +58 -115
- package/plugins/ima-claude/skills/mcp-sequential/SKILL.md +32 -87
- package/plugins/ima-claude/skills/mcp-serena/SKILL.md +54 -80
- package/plugins/ima-claude/skills/mcp-tavily/SKILL.md +40 -63
- package/plugins/ima-claude/skills/mcp-vestige/SKILL.md +75 -116
- package/plugins/ima-claude/skills/php-authnet/SKILL.md +32 -65
- package/plugins/ima-claude/skills/php-fp/SKILL.md +50 -129
- package/plugins/ima-claude/skills/php-fp-wordpress/SKILL.md +25 -73
- package/plugins/ima-claude/skills/phpunit-wp/SKILL.md +103 -463
- package/plugins/ima-claude/skills/playwright/SKILL.md +69 -220
- package/plugins/ima-claude/skills/prompt-starter/SKILL.md +35 -82
- package/plugins/ima-claude/skills/prompt-starter/references/code-review.md +38 -0
- package/plugins/ima-claude/skills/py-fp/SKILL.md +78 -384
- package/plugins/ima-claude/skills/quasar-fp/SKILL.md +54 -255
- package/plugins/ima-claude/skills/quickstart/SKILL.md +7 -11
- package/plugins/ima-claude/skills/rails/SKILL.md +63 -184
- package/plugins/ima-claude/skills/resume-session/SKILL.md +14 -35
- package/plugins/ima-claude/skills/rg/SKILL.md +61 -146
- package/plugins/ima-claude/skills/ruby-fp/SKILL.md +66 -163
- package/plugins/ima-claude/skills/save-session/SKILL.md +10 -39
- package/plugins/ima-claude/skills/scorecard/SKILL.md +24 -38
- package/plugins/ima-claude/skills/skill-analyzer/SKILL.md +42 -71
- package/plugins/ima-claude/skills/skill-creator/SKILL.md +79 -250
- package/plugins/ima-claude/skills/task-master/SKILL.md +11 -31
- package/plugins/ima-claude/skills/task-planner/SKILL.md +44 -153
- package/plugins/ima-claude/skills/task-runner/SKILL.md +61 -143
- package/plugins/ima-claude/skills/unit-testing/SKILL.md +59 -134
- package/plugins/ima-claude/skills/wp-ddev/SKILL.md +38 -120
- package/plugins/ima-claude/skills/wp-local/SKILL.md +26 -108
|
@@ -0,0 +1,159 @@
|
|
|
1
|
+
# Draft Format
|
|
2
|
+
|
|
3
|
+
Structural rules for drafts produced by the draft phase. Injected by the consumer when the recipe declares this file.
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## What a Draft Is
|
|
8
|
+
|
|
9
|
+
A draft is a complete post blueprint that reads like the published page. Every structural element is in place. Every placeholder is marked with the exact placeholder format. An editor reading the draft should be able to move it to production with minimal changes.
|
|
10
|
+
|
|
11
|
+
A draft is not a partial document. It is not a summary of what will be written. It is not an outline with some prose filled in. If an element is missing, the draft is incomplete.
|
|
12
|
+
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
## 10 Required Elements
|
|
16
|
+
|
|
17
|
+
Produce all 10 elements in this order. Recipes may modify the sequence or add elements — follow recipe overrides when they conflict with this default.
|
|
18
|
+
|
|
19
|
+
### 1. Meta Description
|
|
20
|
+
|
|
21
|
+
150–160 characters. Keyword-rich. Describes what the reader will get from the page. Written as a complete sentence or two fragments. Does not begin with the site name.
|
|
22
|
+
|
|
23
|
+
```
|
|
24
|
+
Meta: [150–160 character description]
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
### 2. Title
|
|
28
|
+
|
|
29
|
+
Clear, specific, benefit-oriented. Not a topic label — a claim, a promise, or a question the reader is already asking. The title from the outline is a starting point; refine it for the draft.
|
|
30
|
+
|
|
31
|
+
```
|
|
32
|
+
# [Title]
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
### 3. Excerpt
|
|
36
|
+
|
|
37
|
+
The first paragraph of the piece, set apart as the excerpt. Must contain one bolded key phrase — the most important idea for a scanner to land on. The bolded phrase should be a noun phrase or short clause, not a single word.
|
|
38
|
+
|
|
39
|
+
```
|
|
40
|
+
**[bolded key phrase]** — [rest of excerpt paragraph]
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
Or the bold can fall mid-paragraph where it is most impactful.
|
|
44
|
+
|
|
45
|
+
### 4. Hero Element
|
|
46
|
+
|
|
47
|
+
One of:
|
|
48
|
+
- `[VIDEO EMBED: brief description of video content]`
|
|
49
|
+
- `[HERO IMAGE: brief description — subject, mood, source if known]`
|
|
50
|
+
|
|
51
|
+
Do not place a second visual element immediately after the hero. The prose intro follows.
|
|
52
|
+
|
|
53
|
+
### 5. Prose Intro
|
|
54
|
+
|
|
55
|
+
Two to three paragraphs that hook, frame, and set up the piece. Follows the hook/frame/setup structure from the outline's intro. Written in full prose — not bullets, not headers.
|
|
56
|
+
|
|
57
|
+
The intro should give the reader a reason to keep reading. It does not summarize the entire piece. It earns the reader's next scroll.
|
|
58
|
+
|
|
59
|
+
### 6. Citation Block
|
|
60
|
+
|
|
61
|
+
For content based on a study or published research, include the citation immediately after the intro:
|
|
62
|
+
|
|
63
|
+
```
|
|
64
|
+
**Citation:** [Author Last Names]. "[Study Title]." *[Journal Name]*. [Year]. [DOI or URL if available]
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
For content not based on a primary study, omit this element.
|
|
68
|
+
|
|
69
|
+
### 7. Body Sections
|
|
70
|
+
|
|
71
|
+
For each section from the outline, produce:
|
|
72
|
+
|
|
73
|
+
- An H2 header that states the section's core argument (not just the topic)
|
|
74
|
+
- Prose developing the argument, incorporating key points from the outline
|
|
75
|
+
- At least one bolded key phrase per section
|
|
76
|
+
- Inline blockquotes where the outline marked quote placements
|
|
77
|
+
- Asset placeholders where the outline marked asset placements
|
|
78
|
+
- A subheader (`###`) if the section covers more than two distinct sub-topics
|
|
79
|
+
|
|
80
|
+
No section should run more than four consecutive paragraphs without a visual break (image, quote, or subheader). Wall-of-text sections will be flagged in review.
|
|
81
|
+
|
|
82
|
+
Blockquote format:
|
|
83
|
+
```
|
|
84
|
+
> [Speaker Name]: "[near-verbatim quote]"
|
|
85
|
+
```
|
|
86
|
+
|
|
87
|
+
### 8. Related Reading
|
|
88
|
+
|
|
89
|
+
A list of three to five related resources with brief descriptions. Format:
|
|
90
|
+
|
|
91
|
+
```
|
|
92
|
+
## Related Reading
|
|
93
|
+
|
|
94
|
+
- **[Resource Title]** — [one sentence description] [URL or placeholder]
|
|
95
|
+
- **[Resource Title]** — [one sentence description] [URL or placeholder]
|
|
96
|
+
```
|
|
97
|
+
|
|
98
|
+
### 9. Forums Button
|
|
99
|
+
|
|
100
|
+
A call to action pointing to the IMA community forums. Use the standard placeholder:
|
|
101
|
+
|
|
102
|
+
```
|
|
103
|
+
[Forums Button]
|
|
104
|
+
```
|
|
105
|
+
|
|
106
|
+
Recipes may specify different community CTAs — follow the recipe override.
|
|
107
|
+
|
|
108
|
+
### 10. Asset Table
|
|
109
|
+
|
|
110
|
+
A reference block listing all embeds, downloads, and CTAs used in the piece. The editor uses this to confirm all assets are live before publishing.
|
|
111
|
+
|
|
112
|
+
```
|
|
113
|
+
## Asset Table
|
|
114
|
+
|
|
115
|
+
| Asset | Type | Location in Draft | Status |
|
|
116
|
+
|-------|------|-------------------|--------|
|
|
117
|
+
| [description] | Video embed | After intro | [URL or "TBD"] |
|
|
118
|
+
| [description] | Image | Section 2 | [URL or "TBD"] |
|
|
119
|
+
| [description] | PDF download | Related Reading | [URL or "TBD"] |
|
|
120
|
+
```
|
|
121
|
+
|
|
122
|
+
---
|
|
123
|
+
|
|
124
|
+
## Placeholder Conventions
|
|
125
|
+
|
|
126
|
+
Use these exact formats. Do not improvise placeholder syntax — the consumer may parse them.
|
|
127
|
+
|
|
128
|
+
| Placeholder | Use For |
|
|
129
|
+
|-------------|---------|
|
|
130
|
+
| `[VIDEO EMBED: description]` | Video that should be embedded |
|
|
131
|
+
| `[HERO IMAGE: description]` | Hero image at top of piece |
|
|
132
|
+
| `[STUDY SCREENSHOT: description]` | Figure or table from a study |
|
|
133
|
+
| `[Figure N: description]` | Any numbered figure |
|
|
134
|
+
| `[Interstitial: CTA name]` | Mid-content CTA (between sections) |
|
|
135
|
+
| `[Forums Button]` | Standard IMA forums CTA |
|
|
136
|
+
| `[specific missing data]` | Any specific fact not in source material — describe what is needed |
|
|
137
|
+
|
|
138
|
+
---
|
|
139
|
+
|
|
140
|
+
## Naming Rule
|
|
141
|
+
|
|
142
|
+
If the source material names it, the draft names it. There is no acceptable substitution of a specific reference for a generic one when the specific reference is available.
|
|
143
|
+
|
|
144
|
+
- Named study → use the study name
|
|
145
|
+
- Named drug or protocol → use the exact name as it appears in the source
|
|
146
|
+
- Named speaker → full name on first mention, last name only after
|
|
147
|
+
- Named institution → exact name, no abbreviation on first mention
|
|
148
|
+
|
|
149
|
+
If the source material does not name something, use the appropriate placeholder.
|
|
150
|
+
|
|
151
|
+
---
|
|
152
|
+
|
|
153
|
+
## What Does NOT Belong
|
|
154
|
+
|
|
155
|
+
- Body prose without structural elements — every piece of prose must live inside a named structural element
|
|
156
|
+
- Deferred decisions — "the editor can decide X" — make the decision and note it in editorial watch items if it is uncertain
|
|
157
|
+
- Generic references when specific ones are available in the source material
|
|
158
|
+
- Assets that have not been seen or confirmed — use a placeholder, not an invented description
|
|
159
|
+
- Prose summaries of what sections will contain — write the sections, do not summarize them
|
package/plugins/ima-claude/skills/agentic-workflows/references/standards/editorial-standards.md
ADDED
|
@@ -0,0 +1,160 @@
|
|
|
1
|
+
# Editorial Standards
|
|
2
|
+
|
|
3
|
+
Universal quality criteria for IMA content. Injected by the consumer when the recipe declares this file.
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## Voice Archetypes
|
|
8
|
+
|
|
9
|
+
IMA content blends three archetypes simultaneously. Do not use them in turns or in separate sections — the blend must be present in every paragraph.
|
|
10
|
+
|
|
11
|
+
| Archetype | What It Brings | How It Shows |
|
|
12
|
+
|-----------|---------------|--------------|
|
|
13
|
+
| **Caregiver** | Warmth, solidarity, human stakes | Acknowledges what patients are living with; writes to an ally, not a target |
|
|
14
|
+
| **Sage** | Evidence, precision, credibility | Names studies, cites journals, qualifies claims accurately |
|
|
15
|
+
| **Outlaw** | Institutional critique, moral clarity | Names specific actors when warranted; earned intensity, not reflexive antagonism |
|
|
16
|
+
|
|
17
|
+
The blend should be invisible. Readers should feel it, not label it.
|
|
18
|
+
|
|
19
|
+
---
|
|
20
|
+
|
|
21
|
+
## Writing Principles
|
|
22
|
+
|
|
23
|
+
### Lead with Progress
|
|
24
|
+
|
|
25
|
+
Open with what has been learned, discovered, or achieved — not with the problem alone. The reader should leave the opening paragraph feeling informed, not alarmed.
|
|
26
|
+
|
|
27
|
+
### Organize Around Principles
|
|
28
|
+
|
|
29
|
+
Structure body sections around the insights a reader can act on or carry forward. Do not organize around the source material's sequence unless that sequence is the best reader sequence.
|
|
30
|
+
|
|
31
|
+
### Quotes Near-Verbatim
|
|
32
|
+
|
|
33
|
+
Quote speakers with fidelity to their actual words. Minor grammatical cleanup is acceptable. Do not paraphrase a direct quote and present it as a quote. If you cannot quote exactly, use indirect attribution.
|
|
34
|
+
|
|
35
|
+
### Never Fabricate
|
|
36
|
+
|
|
37
|
+
Do not invent statistics, study names, speaker quotes, dates, or institutional details. If information is not in the source material, use a placeholder: `[specific data needed]`. Placeholders are preferable to fabrications.
|
|
38
|
+
|
|
39
|
+
### Evergreen Where Possible
|
|
40
|
+
|
|
41
|
+
Write in a way that will not be immediately dated. Avoid "this week," "recently," "just published" — use the specific date or publication name instead.
|
|
42
|
+
|
|
43
|
+
### Speaker Attribution
|
|
44
|
+
|
|
45
|
+
Name speakers on first mention with full name and title. Use last name only on subsequent mentions within the same section. Do not refer to speakers as "the expert" or "the researcher" — use their name.
|
|
46
|
+
|
|
47
|
+
### Conviction, Not Dramatization
|
|
48
|
+
|
|
49
|
+
State positions directly when the evidence supports them. Do not manufacture urgency through exclamation points, all-caps, or breathless phrasing. Earned intensity comes from the weight of the evidence, not from theatrical framing.
|
|
50
|
+
|
|
51
|
+
### Strongest Findings Proportional
|
|
52
|
+
|
|
53
|
+
Lead with the findings that are most supported and most significant. Do not bury the main finding in a middle section. If the study's central finding is X, X should appear in the intro or the first body section.
|
|
54
|
+
|
|
55
|
+
### Cumulative Burden Framing
|
|
56
|
+
|
|
57
|
+
When presenting multiple findings, build toward a conclusion. Do not list findings as isolated data points. Connect them: this plus this plus this means something.
|
|
58
|
+
|
|
59
|
+
---
|
|
60
|
+
|
|
61
|
+
## Formatting Rules
|
|
62
|
+
|
|
63
|
+
### Markdown
|
|
64
|
+
|
|
65
|
+
Use pure markdown. No HTML. No inline styles.
|
|
66
|
+
|
|
67
|
+
### Colons in Lists
|
|
68
|
+
|
|
69
|
+
Use colons to introduce lists: `**Key finding:** explanation`. Do not use en-dashes or em-dashes as list introducers.
|
|
70
|
+
|
|
71
|
+
### Em-Dashes
|
|
72
|
+
|
|
73
|
+
Use sparingly — only when a comma or parenthetical won't do. Not more than two per piece.
|
|
74
|
+
|
|
75
|
+
### One Idea Per Visual Block
|
|
76
|
+
|
|
77
|
+
Each image, callout, or embedded asset should stand alone visually. Do not stack two visual elements without prose between them.
|
|
78
|
+
|
|
79
|
+
### Bold One Phrase Per Section
|
|
80
|
+
|
|
81
|
+
Every H2 section should have exactly one bolded key phrase — the most important takeaway for a scanner. Do not bold entire sentences or multiple phrases per section.
|
|
82
|
+
|
|
83
|
+
### Bold Keyword in H2s
|
|
84
|
+
|
|
85
|
+
H2 section headers should contain the most important keyword for that section. Write headers that communicate the section's core argument, not just its topic.
|
|
86
|
+
|
|
87
|
+
### No Unearned Jargon
|
|
88
|
+
|
|
89
|
+
Define any medical term, acronym, or technical concept on first use. Format: `[term] ([brief plain-language definition])`. Do not assume the reader knows clinical terminology.
|
|
90
|
+
|
|
91
|
+
### Single-Sentence Paragraphs
|
|
92
|
+
|
|
93
|
+
Acceptable when the sentence carries enough weight to stand alone. Not acceptable as padding or as a substitute for developing an argument.
|
|
94
|
+
|
|
95
|
+
### 3+ Findings = Bullet List
|
|
96
|
+
|
|
97
|
+
When presenting three or more discrete findings, use a bullet list. Prose strings of findings are harder to scan and easier to misread.
|
|
98
|
+
|
|
99
|
+
### Multiple Sub-Topics = Bold Sub-Headers + Preview List
|
|
100
|
+
|
|
101
|
+
When a section covers more than two distinct sub-topics, introduce them with a brief preview list before the sub-headers. This helps scanners navigate.
|
|
102
|
+
|
|
103
|
+
---
|
|
104
|
+
|
|
105
|
+
## AI Tells to Avoid
|
|
106
|
+
|
|
107
|
+
These phrases signal AI-generated content and must not appear in any draft:
|
|
108
|
+
|
|
109
|
+
- "In today's rapidly evolving..."
|
|
110
|
+
- "In the realm of..."
|
|
111
|
+
- "It's worth noting that..."
|
|
112
|
+
- "It is important to note that..."
|
|
113
|
+
- "At its core,..."
|
|
114
|
+
- "Let's delve into..."
|
|
115
|
+
- "This begs the question..."
|
|
116
|
+
- "In conclusion,..."
|
|
117
|
+
- "Moreover,..." (as a paragraph opener — occasional mid-sentence use is fine)
|
|
118
|
+
- "Furthermore,..." (as a paragraph opener)
|
|
119
|
+
- "That being said,..."
|
|
120
|
+
- "Navigate the complexities of..."
|
|
121
|
+
- "Unlock the potential of..."
|
|
122
|
+
- "Leverage" (when "use" will do)
|
|
123
|
+
- "Robust" (as a generic intensifier)
|
|
124
|
+
- "Comprehensive" (as a generic intensifier)
|
|
125
|
+
- "Innovative" (without specific description of what is new)
|
|
126
|
+
- "Cutting-edge" (without specific description)
|
|
127
|
+
- "Seamless" (as a generic positive)
|
|
128
|
+
- "Deep dive"
|
|
129
|
+
- "Unpack"
|
|
130
|
+
- "Explore" (as a verb for what the piece will do — use "examine," "analyze," or "show")
|
|
131
|
+
|
|
132
|
+
If three or more AI tells appear in a draft, the Brand Voice score drops one letter grade.
|
|
133
|
+
|
|
134
|
+
---
|
|
135
|
+
|
|
136
|
+
## IMA Terminology
|
|
137
|
+
|
|
138
|
+
| Avoid | Use Instead | Why |
|
|
139
|
+
|-------|-------------|-----|
|
|
140
|
+
| FLCCC | IMA / Independent Medical Alliance | Rebrand complete |
|
|
141
|
+
| "Cure" (unqualified) | "Protocol," "approach," "may help with" | Precision |
|
|
142
|
+
| "Treatment" (unqualified) | "Protocol," "approach" | Precision |
|
|
143
|
+
| "You should" | "You may consider," "Research suggests" | Patient autonomy |
|
|
144
|
+
| "Alternative medicine" | "Integrative medicine," "complementary approaches" | Accurate framing |
|
|
145
|
+
| "Big Pharma" (as sole descriptor) | Name the company, or "pharmaceutical industry" | Credibility |
|
|
146
|
+
| "We believe" (for science) | "Evidence shows," "Research indicates" | Evidence-based positioning |
|
|
147
|
+
| "Anti-vaccine" (describing IMA) | "Pro-informed-consent," "independent" | Accuracy |
|
|
148
|
+
|
|
149
|
+
---
|
|
150
|
+
|
|
151
|
+
## Independence Signal
|
|
152
|
+
|
|
153
|
+
At least one of the following must appear in any long-form piece:
|
|
154
|
+
|
|
155
|
+
- "Independent" in the organizational description
|
|
156
|
+
- "No pharma funding" or equivalent
|
|
157
|
+
- "501(c)(3) nonprofit" identification
|
|
158
|
+
- "Funded by people" / "funded by donors" language
|
|
159
|
+
|
|
160
|
+
Social posts are exempt — the profile bio carries this. Op-eds and statements are not exempt.
|
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
# Outline Format
|
|
2
|
+
|
|
3
|
+
Structural rules for outlines produced by the outline phase. Injected by the consumer when the recipe declares this file.
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## What an Outline Is
|
|
8
|
+
|
|
9
|
+
An outline is a structural proposal in bullet points. It is not a draft. It contains no prose paragraphs. It communicates architecture — what sections exist, in what order, what each section argues, and where visual elements land.
|
|
10
|
+
|
|
11
|
+
The outline is the contract between the outline phase and the draft phase. The draft phase follows the outline unless a deviation is explicitly documented.
|
|
12
|
+
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
## Governing Principle
|
|
16
|
+
|
|
17
|
+
Structure around reader needs, not source material architecture.
|
|
18
|
+
|
|
19
|
+
The source material (transcript, study, press release) has its own sequence driven by how it was produced. That sequence is rarely the best sequence for a reader encountering the material for the first time. The outline phase's job is to find the reader's sequence.
|
|
20
|
+
|
|
21
|
+
Ask: what does the reader need to know first to understand what comes next? Start there.
|
|
22
|
+
|
|
23
|
+
---
|
|
24
|
+
|
|
25
|
+
## Required Elements
|
|
26
|
+
|
|
27
|
+
Every outline must contain these elements in this order:
|
|
28
|
+
|
|
29
|
+
### Title
|
|
30
|
+
A proposed headline. Clear, specific, benefit-oriented. Not a topic label — a claim or a promise. The draft phase may refine it, but the outline provides a working title.
|
|
31
|
+
|
|
32
|
+
### Intro
|
|
33
|
+
Three components:
|
|
34
|
+
- **Hook** — the entry point that earns the reader's attention. One sentence. Can be a bold claim, a striking finding, a tension, or a question the reader is already asking.
|
|
35
|
+
- **Frame** — what this piece is about and why it matters now. One to two sentences.
|
|
36
|
+
- **Setup** — what the reader will get from reading. One sentence.
|
|
37
|
+
|
|
38
|
+
### Body Sections (3–5)
|
|
39
|
+
For each section:
|
|
40
|
+
- **Section title** — communicates the core argument, not just the topic
|
|
41
|
+
- **Core argument** — one sentence stating what this section claims
|
|
42
|
+
- **Key points** — bullet list of the specific evidence, data, or ideas that support the core argument
|
|
43
|
+
- **Asset placements** — where images, video embeds, or CTAs land within this section (if applicable)
|
|
44
|
+
- **Quote placements** — where blockquotes land inline, with the speaker and a fragment of the quote
|
|
45
|
+
|
|
46
|
+
Sections must not overlap in argument. If two sections are making the same point, merge them.
|
|
47
|
+
|
|
48
|
+
### Related Reading
|
|
49
|
+
Three to five links or resource types. Can be TBD if assets are not yet confirmed. Include a brief description of each.
|
|
50
|
+
|
|
51
|
+
### Editorial Watch Items
|
|
52
|
+
Things the draft phase should pay special attention to:
|
|
53
|
+
- Naming sensitivities (speakers, institutions, studies)
|
|
54
|
+
- Attribution requirements (quotes that must be near-verbatim)
|
|
55
|
+
- Gaps that need `[bracket]` treatment
|
|
56
|
+
- Recipe-specific requirements the draft phase must apply
|
|
57
|
+
- Anything from the gather phase gaps section that was not resolved
|
|
58
|
+
|
|
59
|
+
### Word Target
|
|
60
|
+
Carry forward from the gather phase. If the outline reveals the scope is larger or smaller than estimated, adjust and explain the change in one sentence.
|
|
61
|
+
|
|
62
|
+
---
|
|
63
|
+
|
|
64
|
+
## Section Scope
|
|
65
|
+
|
|
66
|
+
Each body section argues exactly one thing. The section title states that argument. Every key point in the section supports that argument. If a section has key points that pull in two directions, split it into two sections.
|
|
67
|
+
|
|
68
|
+
Aim for 3–5 sections. Fewer than 3 means the content lacks depth. More than 5 means the scope is too broad or the arguments are not being consolidated.
|
|
69
|
+
|
|
70
|
+
---
|
|
71
|
+
|
|
72
|
+
## Visual Element Placement
|
|
73
|
+
|
|
74
|
+
Apply these rules for every asset:
|
|
75
|
+
|
|
76
|
+
- **No adjacent visual elements** — never place two images, embeds, or CTAs in sequence without prose between them
|
|
77
|
+
- **Images break up content within sections** — place images mid-section when a section runs long, not at the top as a header image (unless the recipe specifies a hero)
|
|
78
|
+
- **CTAs go between sections** — interstitial CTAs belong in the transition between sections, not embedded within a section's prose
|
|
79
|
+
- **Video embeds** — typically at the top of the piece as the hero element; note this in the intro element, not a body section
|
|
80
|
+
|
|
81
|
+
---
|
|
82
|
+
|
|
83
|
+
## Quote Placement
|
|
84
|
+
|
|
85
|
+
Quotes belong inline where they would naturally land if the reader encountered them in prose — not in a separate "Quotes" section.
|
|
86
|
+
|
|
87
|
+
For each quote, mark its placement in the relevant section's key points:
|
|
88
|
+
|
|
89
|
+
```
|
|
90
|
+
- Quote: [Speaker last name]: "[fragment of quote]" — after point about [topic]
|
|
91
|
+
```
|
|
92
|
+
|
|
93
|
+
Blockquote format in the draft:
|
|
94
|
+
```
|
|
95
|
+
> [Speaker Name]: "exact or near-verbatim quote"
|
|
96
|
+
```
|
|
97
|
+
|
|
98
|
+
Select quotes that advance the section's core argument. Do not include quotes for variety or because they seem interesting. Every quote should be the best available evidence for the point it follows.
|
|
99
|
+
|
|
100
|
+
---
|
|
101
|
+
|
|
102
|
+
## What Does NOT Belong in an Outline
|
|
103
|
+
|
|
104
|
+
- Prose paragraphs — outlines use bullets, not paragraphs
|
|
105
|
+
- Every detail from the source material — only what advances the reader's understanding
|
|
106
|
+
- Meta descriptions — these belong in the draft
|
|
107
|
+
- A separate "Quotes" section — quotes go inline
|
|
108
|
+
- The source material's own section structure — unless it happens to be the best reader sequence
|
|
109
|
+
- Stacked visual elements — no two adjacent assets
|
|
110
|
+
- Speculative sections — if you are not confident a section belongs, it does not belong
|
package/plugins/ima-claude/skills/agentic-workflows/references/templates/avada-construction-guide.md
ADDED
|
@@ -0,0 +1,263 @@
|
|
|
1
|
+
# Avada/Fusion Builder Construction Guide
|
|
2
|
+
|
|
3
|
+
General reference for building IMA blog posts and editorial pages in the WordPress backend using Fusion Builder shortcode markup. This document covers building blocks, syntax patterns, and placement principles. It is content-type agnostic. Content-type-specific templates (webinar summaries, research posts, etc.) live in their respective project instruction files and reference this guide for construction mechanics.
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## Core Container Structure
|
|
8
|
+
|
|
9
|
+
Every post is wrapped in a single container → row → column stack:
|
|
10
|
+
|
|
11
|
+
```
|
|
12
|
+
[fusion_builder_container]
|
|
13
|
+
[fusion_builder_row]
|
|
14
|
+
[fusion_builder_column type="1_1"]
|
|
15
|
+
<!-- all content blocks go here -->
|
|
16
|
+
[/fusion_builder_column]
|
|
17
|
+
[/fusion_builder_row]
|
|
18
|
+
[/fusion_builder_container]
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
This outer wrapper never changes. Copy verbatim from any existing post.
|
|
22
|
+
|
|
23
|
+
---
|
|
24
|
+
|
|
25
|
+
## Content Block Types
|
|
26
|
+
|
|
27
|
+
### Text Block
|
|
28
|
+
The workhorse. Used for body paragraphs, bullet lists, blockquotes, and inline links.
|
|
29
|
+
|
|
30
|
+
```
|
|
31
|
+
[fusion_text]
|
|
32
|
+
<p>Paragraph content here with <strong>strategic bold</strong> for emphasis.</p>
|
|
33
|
+
|
|
34
|
+
<blockquote>"Speaker quote here." — <strong>Name</strong></blockquote>
|
|
35
|
+
|
|
36
|
+
<ul>
|
|
37
|
+
<li><strong>Label:</strong> Description text</li>
|
|
38
|
+
<li><strong>Label:</strong> Description text</li>
|
|
39
|
+
</ul>
|
|
40
|
+
[/fusion_text]
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
**Usage notes:**
|
|
44
|
+
- One `fusion_text` block per logical content section. Don't cram an entire post into one block.
|
|
45
|
+
- Break into new blocks at natural visual anchor points: before/after images, at section transitions.
|
|
46
|
+
- `<strong>` for emphasis within paragraphs. Don't bold entire sentences.
|
|
47
|
+
- `<blockquote>` for speaker/researcher quotes with em-dash attribution.
|
|
48
|
+
|
|
49
|
+
### Title Block
|
|
50
|
+
Used for section headers and styled intro text.
|
|
51
|
+
|
|
52
|
+
```
|
|
53
|
+
[fusion_title title_type="text" style_type="none" title_tag="h2"]
|
|
54
|
+
<strong>N.</strong> Section Title
|
|
55
|
+
[/fusion_title]
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
For styled intro blocks (non-heading text that needs title-level formatting):
|
|
59
|
+
|
|
60
|
+
```
|
|
61
|
+
[fusion_title title_type="text" style_type="none" size="div"]
|
|
62
|
+
Intro text styled as a title block
|
|
63
|
+
[/fusion_title]
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
**Usage notes:**
|
|
67
|
+
- Numbered sections use `<h2><strong>N.</strong> Section Title</h2>` inside a `fusion_text` block (not `fusion_title`) for consistency with existing posts.
|
|
68
|
+
- `fusion_title` is primarily for standalone headers and styled intro text.
|
|
69
|
+
|
|
70
|
+
### Image Block
|
|
71
|
+
Used for slide images, diagrams, headshots, promo graphics, and resource covers.
|
|
72
|
+
|
|
73
|
+
```
|
|
74
|
+
[fusion_imageframe
|
|
75
|
+
image_id="ATTACHMENT_ID|full"
|
|
76
|
+
style_type="none"
|
|
77
|
+
alt="Descriptive alt text"
|
|
78
|
+
align="center"
|
|
79
|
+
lightbox="yes"
|
|
80
|
+
margin_top="20px"
|
|
81
|
+
margin_bottom="20px"]
|
|
82
|
+
https://imahealth.org/wp-content/uploads/path/to/image.jpg
|
|
83
|
+
[/fusion_imageframe]
|
|
84
|
+
```
|
|
85
|
+
|
|
86
|
+
**Lightbox rules:**
|
|
87
|
+
- `lightbox="yes"` for diagrams, charts, slides, data tables — anything the reader might want to zoom into
|
|
88
|
+
- `lightbox="no"` for promo images and linked graphics. Add `link` attribute when the image should click through to a page.
|
|
89
|
+
|
|
90
|
+
**Sizing:**
|
|
91
|
+
- Headshots: `max_width="200"` in a `1_4` column
|
|
92
|
+
- Slide images: full-width within the content column
|
|
93
|
+
- Promo images: full-width, linked, no lightbox
|
|
94
|
+
|
|
95
|
+
**Border treatment for covers, figures, and charts:**
|
|
96
|
+
- Study covers, guide covers, book covers, figures, charts, and graphs: `bordersize="3" bordercolor="#00066f" borderradius="10"`
|
|
97
|
+
- This applies to any image that represents a document or data visualization. It does not apply to promo images, headshots, or hero images.
|
|
98
|
+
|
|
99
|
+
**External links:**
|
|
100
|
+
- All links to external sites (anything outside imahealth.org) must include `linktarget="_blank"` on imageframes and `target="_blank"` on `<a>` tags within fusion_text blocks.
|
|
101
|
+
|
|
102
|
+
**Video embed spacing:**
|
|
103
|
+
- The first `fusion_text` block after a video embed should include `margin_top="30px"` for breathing room between the video player and the body text.
|
|
104
|
+
|
|
105
|
+
### Button Block
|
|
106
|
+
Used for CTAs (forums, donation, external links).
|
|
107
|
+
|
|
108
|
+
```
|
|
109
|
+
[fusion_button
|
|
110
|
+
link="https://imahealth.org/forums/"
|
|
111
|
+
icon="fa-comments fas"
|
|
112
|
+
alignment="center"]
|
|
113
|
+
Continue the conversation at the Forums
|
|
114
|
+
[/fusion_button]
|
|
115
|
+
```
|
|
116
|
+
|
|
117
|
+
### Separator Block
|
|
118
|
+
Used for visual breaks between major sections.
|
|
119
|
+
|
|
120
|
+
```
|
|
121
|
+
[fusion_separator style_type="single solid" sep_color="#e0e0e0" border_size="2"][/fusion_separator]
|
|
122
|
+
```
|
|
123
|
+
|
|
124
|
+
### Code Block (for embeds)
|
|
125
|
+
Used for video embeds and any content requiring base64-encoded shortcodes.
|
|
126
|
+
|
|
127
|
+
```
|
|
128
|
+
[fusion_code]BASE64_ENCODED_SHORTCODE_HERE[/fusion_code]
|
|
129
|
+
```
|
|
130
|
+
|
|
131
|
+
**Common use:** Cloudflare stream video embeds. Encode the stream shortcode as base64 and place inside `fusion_code`.
|
|
132
|
+
|
|
133
|
+
---
|
|
134
|
+
|
|
135
|
+
## Layout Patterns
|
|
136
|
+
|
|
137
|
+
### Single Column (default)
|
|
138
|
+
Most content uses the outer 1_1 column. No inner rows needed.
|
|
139
|
+
|
|
140
|
+
### Two-Column Split (e.g., resource covers, side-by-side elements)
|
|
141
|
+
Nested inner row with two half-width columns:
|
|
142
|
+
|
|
143
|
+
```
|
|
144
|
+
[fusion_builder_row_inner]
|
|
145
|
+
[fusion_builder_column_inner type="1_2"]
|
|
146
|
+
[fusion_imageframe ...]image_url[/fusion_imageframe]
|
|
147
|
+
[fusion_text]<p style="text-align: center;"><strong>Title</strong><br>One-line description</p>[/fusion_text]
|
|
148
|
+
[/fusion_builder_column_inner]
|
|
149
|
+
[fusion_builder_column_inner type="1_2"]
|
|
150
|
+
[fusion_imageframe ...]image_url[/fusion_imageframe]
|
|
151
|
+
[fusion_text]<p style="text-align: center;"><strong>Title</strong><br>One-line description</p>[/fusion_text]
|
|
152
|
+
[/fusion_builder_column_inner]
|
|
153
|
+
[/fusion_builder_row_inner]
|
|
154
|
+
```
|
|
155
|
+
|
|
156
|
+
**Use when:** Featuring two related resources side by side (PDF covers, guide pairs, before/after comparisons).
|
|
157
|
+
|
|
158
|
+
### Headshot + Bio (e.g., expert profiles, author intros)
|
|
159
|
+
Quarter-width image column + three-quarter text column:
|
|
160
|
+
|
|
161
|
+
```
|
|
162
|
+
[fusion_builder_row_inner]
|
|
163
|
+
[fusion_builder_column_inner type="1_4"]
|
|
164
|
+
[fusion_imageframe image_id="ID|full" max_width="200" style_type="none" align="center"]
|
|
165
|
+
headshot_url
|
|
166
|
+
[/fusion_imageframe]
|
|
167
|
+
[/fusion_builder_column_inner]
|
|
168
|
+
[fusion_builder_column_inner type="3_4"]
|
|
169
|
+
[fusion_text]
|
|
170
|
+
<p><strong>Name</strong><br><em>Title, Credentials</em></p>
|
|
171
|
+
<p>Bio paragraph.</p>
|
|
172
|
+
[/fusion_text]
|
|
173
|
+
[/fusion_builder_column_inner]
|
|
174
|
+
[/fusion_builder_row_inner]
|
|
175
|
+
```
|
|
176
|
+
|
|
177
|
+
**Credential structure:** Keep parallel across multiple experts. If some lack titles/achievements, simplify everyone to the same level of detail (e.g., institution affiliation only).
|
|
178
|
+
|
|
179
|
+
---
|
|
180
|
+
|
|
181
|
+
## Interstitials (Global Blocks)
|
|
182
|
+
|
|
183
|
+
Reusable CTA blocks stored as Fusion Builder globals. Each global block requires the full `row_inner` → `column_inner` → content structure inline. The `fusion_global` attribute syncs with WordPress, but **the inline content is what renders**. Never swap a global ID without swapping the full content block.
|
|
184
|
+
|
|
185
|
+
**Available blocks and their full markup live in the CTA Block Catalog** (`cta-block-catalog.md`). That file is the single source of truth for all globals. Copy the markup verbatim from the catalog when placing CTAs in post markup.
|
|
186
|
+
|
|
187
|
+
### Placement Principles
|
|
188
|
+
|
|
189
|
+
- One interstitial every 1–2 sections
|
|
190
|
+
- Never back to back
|
|
191
|
+
- Place at natural pause points, not mid-argument
|
|
192
|
+
- Engagement CTAs (Journal, Research Hub, Substack, Conference) go earlier in the post as informational breaks
|
|
193
|
+
- Donation CTAs are the ask: they go late, typically before the emotional close or final section
|
|
194
|
+
- Match the donation CTA to the content topic (webinar → Webinar Donation, cancer → Cancer Research Donation, research study → Research Donation, journal → Journal Donation). The CTA catalog has usage notes for each block.
|
|
195
|
+
|
|
196
|
+
---
|
|
197
|
+
|
|
198
|
+
## Image Placement Decision Framework
|
|
199
|
+
|
|
200
|
+
1. **Does the section introduce a visual concept (framework, diagram, cycle)?** → Place the corresponding image immediately after the text introduces it, before the next paragraph continues.
|
|
201
|
+
|
|
202
|
+
2. **Are new resources being released?** → Use the two-column PDF cover split in the section that introduces them.
|
|
203
|
+
|
|
204
|
+
3. **Is there a contextually relevant promo?** → Place after the final body section. Must be earned by the content (e.g., speakers mentioned in the post are at the conference).
|
|
205
|
+
|
|
206
|
+
4. **Are there 2+ sections in a row without a visual break?** → Insert an interstitial between them.
|
|
207
|
+
|
|
208
|
+
5. **Does the post feel visually dense in the middle?** → Rearrange interstitials to create breathing room.
|
|
209
|
+
|
|
210
|
+
---
|
|
211
|
+
|
|
212
|
+
## TODO Placeholders
|
|
213
|
+
|
|
214
|
+
Use these standardized placeholders in templates. Replace before publishing.
|
|
215
|
+
|
|
216
|
+
| Placeholder Pattern | What to Replace With |
|
|
217
|
+
|---------------------|---------------------|
|
|
218
|
+
| `VIDEO_EMBED_BASE64_HERE` | Base64-encoded fusion_code shortcode |
|
|
219
|
+
| `*_HEADSHOT_ID` | WordPress media library attachment ID |
|
|
220
|
+
| `PATH_TO_*.jpg` | Full URL path to image in media library |
|
|
221
|
+
| `*_COVER_ID` | Media library ID for guide/resource cover images |
|
|
222
|
+
| Any `image_id="*_ID\|full"` | Actual WordPress attachment ID |
|
|
223
|
+
|
|
224
|
+
---
|
|
225
|
+
|
|
226
|
+
## Related Reading Block
|
|
227
|
+
|
|
228
|
+
Standard footer block before the forums button. Curated links relevant to the post content.
|
|
229
|
+
|
|
230
|
+
```
|
|
231
|
+
[fusion_text]
|
|
232
|
+
<h2>Related Reading</h2>
|
|
233
|
+
<ul>
|
|
234
|
+
<li><strong>Label:</strong> <a href="URL">Title</a></li>
|
|
235
|
+
<li><strong>Label:</strong> <a href="URL">Title</a></li>
|
|
236
|
+
</ul>
|
|
237
|
+
[/fusion_text]
|
|
238
|
+
```
|
|
239
|
+
|
|
240
|
+
**Format:** Bold type label + linked title. No descriptions. Labels indicate content type (Guide, Monograph, Webinar, Hub, etc.).
|
|
241
|
+
|
|
242
|
+
---
|
|
243
|
+
|
|
244
|
+
## Forums Button (standard footer)
|
|
245
|
+
|
|
246
|
+
Appears at the bottom of every post. Copy verbatim.
|
|
247
|
+
|
|
248
|
+
```
|
|
249
|
+
[fusion_button link="/forums/" icon="fa-comments fas" alignment="center"]
|
|
250
|
+
Continue the conversation at the Forums
|
|
251
|
+
[/fusion_button]
|
|
252
|
+
```
|
|
253
|
+
|
|
254
|
+
---
|
|
255
|
+
|
|
256
|
+
## Transition to LiveCanvas / Bootstrap
|
|
257
|
+
|
|
258
|
+
When the environment changes, the principles carry over:
|
|
259
|
+
|
|
260
|
+
- **Content structure** (intro → experts → body sections → related reading) doesn't change
|
|
261
|
+
- **Image placement logic** doesn't change
|
|
262
|
+
- **Interstitial placement logic** doesn't change
|
|
263
|
+
- **What changes:** The markup language. Fusion Builder shortcodes become Bootstrap utility classes and HTML. This document will be updated with new markup patterns, but the structural logic transfers directly.
|