@lifeaitools/rdc-skills 0.24.7 → 0.24.9
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/.claude-plugin/plugin.json +20 -5
- package/.github/workflows/self-test.yml +34 -34
- package/MANIFEST.md +23 -0
- package/README.md +37 -0
- package/commands/build.md +181 -181
- package/commands/collab.md +180 -180
- package/commands/deploy.md +148 -148
- package/commands/fixit.md +105 -105
- package/commands/handoff.md +173 -173
- package/commands/overnight.md +218 -218
- package/commands/plan.md +158 -158
- package/commands/preplan.md +131 -131
- package/commands/prototype.md +145 -145
- package/commands/report.md +99 -99
- package/commands/review.md +120 -120
- package/commands/status.md +86 -86
- package/commands/workitems.md +127 -127
- package/git-sha.json +1 -1
- package/guides/agent-bootstrap.md +195 -195
- package/guides/agents/backend.md +102 -102
- package/guides/agents/content.md +94 -94
- package/guides/agents/cs2.md +56 -56
- package/guides/agents/data.md +86 -86
- package/guides/agents/design.md +77 -77
- package/guides/agents/frontend.md +91 -91
- package/guides/agents/infrastructure.md +81 -81
- package/guides/agents/setup.md +272 -272
- package/guides/agents/verify.md +119 -119
- package/guides/agents/viz.md +106 -106
- package/package.json +3 -1
- package/scripts/self-test.mjs +1458 -1458
- package/skills/build/SKILL.md +554 -554
- package/skills/channel-formatter/SKILL.md +180 -9
- package/skills/collab/SKILL.md +239 -239
- package/skills/deploy/SKILL.md +541 -541
- package/skills/design/SKILL.md +205 -205
- package/skills/fixit/SKILL.md +165 -165
- package/skills/handoff/SKILL.md +200 -200
- package/skills/overnight/SKILL.md +251 -251
- package/skills/plan/SKILL.md +314 -314
- package/skills/preplan/SKILL.md +90 -90
- package/skills/prototype/SKILL.md +150 -150
- package/skills/release/SKILL.md +140 -140
- package/skills/report/SKILL.md +100 -100
- package/skills/review/SKILL.md +152 -152
- package/skills/self-test/SKILL.md +123 -123
- package/skills/status/SKILL.md +99 -99
- package/skills/watch/SKILL.md +90 -90
- package/skills/workitems/SKILL.md +151 -151
- package/tests/channel-formatter.contract.test.mjs +251 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: rdc:channel-formatter
|
|
3
|
-
description: "Usage `rdc:channel-formatter <channel> [content]` — Apply precise, channel-native formatting to any output: LinkedIn, Twitter/X, Slack/Teams, Email (external/internal), Pitch Deck slides, Word/DOCX, PDF Report,
|
|
3
|
+
description: "Usage `rdc:channel-formatter <channel|pack> [content]` — Apply precise, channel-native formatting and content repurposing to any output: LinkedIn, Twitter/X, Slack/Teams, Email (external/internal), Pitch Deck slides, Word/DOCX, PDF Report, Web/Landing Page, and multi-output content packs. Use EVERY TIME the user names an output channel/platform/document type, asks to 'write a post', 'draft an email', 'format this for', 'make this a slide', 'send to LinkedIn', 'write a tweet', 'social media post', 'turn this article into posts', 'make a content pack', 'make a social pack', or 'repurpose this article'. Each channel has its own Unicode strategy, emphasis system, length limits, and structure — never apply generic markdown to channel-specific output. This skill FORMATS, STRUCTURES, and REPURPOSES text only — for actual .docx/.pptx ↔ Markdown FILE conversion (either direction) use `rdc:convert` (build-corpus), not this skill. Self-contained: all channel and pack rules are inlined below (no external reference files)."
|
|
4
4
|
---
|
|
5
5
|
|
|
6
6
|
> **⚠️ OUTPUT CONTRACT (READ FIRST):** `guides/output-contract.md`
|
|
@@ -13,12 +13,45 @@ description: "Usage `rdc:channel-formatter <channel> [content]` — Apply precis
|
|
|
13
13
|
|
|
14
14
|
# Channel Formatter
|
|
15
15
|
|
|
16
|
-
Format output precisely for the target channel. This skill is
|
|
17
|
-
every channel
|
|
18
|
-
apply its rules exactly. Never apply
|
|
16
|
+
Format or repurpose output precisely for the target channel. This skill is
|
|
17
|
+
**self-contained** — every channel and pack rule is inlined below. Detect the
|
|
18
|
+
channel or pack, jump to its section, apply its rules exactly. Never apply
|
|
19
|
+
generic markdown to a channel that doesn't render it.
|
|
19
20
|
|
|
20
21
|
---
|
|
21
22
|
|
|
23
|
+
## When to Use
|
|
24
|
+
|
|
25
|
+
Use this skill whenever the user asks to write, format, adapt, or repurpose
|
|
26
|
+
content for a specific channel, platform, document type, or output pack.
|
|
27
|
+
|
|
28
|
+
Common triggers:
|
|
29
|
+
- "write a LinkedIn post"
|
|
30
|
+
- "turn this article into social posts"
|
|
31
|
+
- "make a content pack"
|
|
32
|
+
- "make a social pack"
|
|
33
|
+
- "repurpose this article"
|
|
34
|
+
- "write a tweet/thread"
|
|
35
|
+
- "draft an email"
|
|
36
|
+
- "format this for Slack"
|
|
37
|
+
- "make this a slide"
|
|
38
|
+
- "write landing-page copy"
|
|
39
|
+
|
|
40
|
+
Do not use this skill for binary file conversion, PDF rendering, Brochurify
|
|
41
|
+
orchestration, or brochure JSX authoring; delegate those to the specialist
|
|
42
|
+
skills named in the scope boundary.
|
|
43
|
+
|
|
44
|
+
## Arguments
|
|
45
|
+
|
|
46
|
+
`rdc:channel-formatter <channel|pack> [content]`
|
|
47
|
+
|
|
48
|
+
- `<channel|pack>`: optional target such as `linkedin`, `twitter`,
|
|
49
|
+
`twitter-thread`, `slack`, `email-ext`, `email-int`, `pitch-deck`, `word`,
|
|
50
|
+
`pdf-report`, `web`, `strict-format`, `social-pack`, `campaign-pack`,
|
|
51
|
+
`exec-pack`, or `launch-pack`.
|
|
52
|
+
- `[content]`: optional source text, path reference, article, report, transcript,
|
|
53
|
+
rough draft, or surrounding conversation content.
|
|
54
|
+
|
|
22
55
|
## Channel Detection
|
|
23
56
|
|
|
24
57
|
| If user says / context is... | Channel | Go to section |
|
|
@@ -34,15 +67,27 @@ apply its rules exactly. Never apply generic markdown to a channel that doesn't
|
|
|
34
67
|
| Website, landing page, web copy | Web/Landing Page | [§ Web / Landing Page](#-web--landing-page) |
|
|
35
68
|
| Artifact, JSX, React component, Claude artifact | Artifact/JSX | → use the `jsx-author` / `impeccable` skill instead |
|
|
36
69
|
|
|
70
|
+
### Pack Detection
|
|
71
|
+
|
|
72
|
+
| If user says / context is... | Mode | Go to section |
|
|
73
|
+
|-------------------------------------------------------|------------------|-------------------------------|
|
|
74
|
+
| social pack, content pack, posts from this, repurpose this article for social | `social-pack` | [§ Content Repurposing Packs](#-content-repurposing-packs) |
|
|
75
|
+
| campaign pack, launch campaign, article into email + social + web | `campaign-pack` | [§ Content Repurposing Packs](#-content-repurposing-packs) |
|
|
76
|
+
| exec pack, executive pack, leadership summary, internal briefing | `exec-pack` | [§ Content Repurposing Packs](#-content-repurposing-packs) |
|
|
77
|
+
| launch pack, announce this, launch posts | `launch-pack` | [§ Content Repurposing Packs](#-content-repurposing-packs) |
|
|
78
|
+
| strict format, preserve wording, do not rewrite | `strict-format` | [§ Repurposing Modes](#-repurposing-modes) |
|
|
79
|
+
|
|
37
80
|
---
|
|
38
81
|
|
|
39
82
|
## Workflow
|
|
40
83
|
|
|
41
|
-
1. **Detect channel** from the request using the
|
|
42
|
-
2. **
|
|
43
|
-
3. **
|
|
44
|
-
4.
|
|
45
|
-
5.
|
|
84
|
+
1. **Detect channel or pack mode** from the request using the tables above.
|
|
85
|
+
2. **Classify the source**: already-drafted copy, long article/report, transcript, notes, or brief.
|
|
86
|
+
3. **For long sources**, extract thesis, audience, proof points, CTA, constraints, and factual risks before writing.
|
|
87
|
+
4. **Jump to the target channel or pack section** below and apply all rules exactly — do not rely on memory.
|
|
88
|
+
5. **Never mix** markdown conventions across channels.
|
|
89
|
+
6. If the channel or pack is ambiguous, ask once: "Is this for [Channel A] or [Channel B]?"
|
|
90
|
+
7. Produce the formatted or repurposed output directly as the deliverable.
|
|
46
91
|
|
|
47
92
|
## Hard Rules (all channels)
|
|
48
93
|
|
|
@@ -51,6 +96,8 @@ apply its rules exactly. Never apply generic markdown to a channel that doesn't
|
|
|
51
96
|
- Never use Word Styles notation in plain-text channels.
|
|
52
97
|
- Always match the tone register of the channel (formal ≠ casual ≠ punchy).
|
|
53
98
|
- For LIFEAI/PRT/RDC content, maintain REGEN-MODE voice unless Author-Mode is active.
|
|
99
|
+
- When repurposing a long source, preserve the source thesis and never invent unsupported statistics, quotes, names, dates, citations, results, or commitments.
|
|
100
|
+
- If the source lacks a needed CTA, audience, proof point, or date, either use a clearly generic placeholder or state the assumption before the polished output.
|
|
54
101
|
|
|
55
102
|
> ## ⛔ Scope boundary — this skill FORMATS text; it does NOT convert files
|
|
56
103
|
> This skill governs **how to structure and format content** for a channel. It never
|
|
@@ -60,6 +107,130 @@ apply its rules exactly. Never apply generic markdown to a channel that doesn't
|
|
|
60
107
|
> doc" → **`rdc:convert`**. "format this content the Word way / write it for LinkedIn" →
|
|
61
108
|
> this skill. The Word/DOCX and PDF sections below describe target structure only; producing
|
|
62
109
|
> the actual `.docx`/`.pdf` artifact is `rdc:convert` / `rdc:brochure`, not channel-formatter.
|
|
110
|
+
>
|
|
111
|
+
> Specialist routing:
|
|
112
|
+
> - Office/Markdown file conversion → `rdc:convert`
|
|
113
|
+
> - HTML/folder/zip/URL to PDF brochure rendering → `rdc:brochure`
|
|
114
|
+
> - Brochurify orchestration jobs → `rdc:brochurify`
|
|
115
|
+
> - Brochure JSX using `@lifeai/brochure-kit` → `lifeai-brochure-author`
|
|
116
|
+
|
|
117
|
+
---
|
|
118
|
+
|
|
119
|
+
## § Repurposing Modes
|
|
120
|
+
|
|
121
|
+
Use these modes when the input is longer than the requested output, such as an
|
|
122
|
+
article, memo, transcript, report, rough draft, or notes.
|
|
123
|
+
|
|
124
|
+
### `strict-format`
|
|
125
|
+
Preserve the source wording and argument as much as the channel allows. Use this
|
|
126
|
+
when the user says "format only", "do not rewrite", "preserve wording", or when
|
|
127
|
+
legal/compliance precision matters. You may adjust line breaks, headings,
|
|
128
|
+
emphasis, bullet symbols, and channel-specific structure, but do not add new
|
|
129
|
+
claims or reframe the argument.
|
|
130
|
+
|
|
131
|
+
### `single-channel`
|
|
132
|
+
Repurpose the source into one target channel. Extract the usable argument,
|
|
133
|
+
choose the strongest hook for that channel, compress or expand to the channel's
|
|
134
|
+
native length, and produce one finished output.
|
|
135
|
+
|
|
136
|
+
### `social-pack`
|
|
137
|
+
Repurpose one source into a coordinated set of social outputs:
|
|
138
|
+
- LinkedIn thought-leadership post
|
|
139
|
+
- Short LinkedIn announcement or teaser variant
|
|
140
|
+
- Twitter/X single post
|
|
141
|
+
- Twitter/X thread
|
|
142
|
+
- Slack/Teams internal share
|
|
143
|
+
|
|
144
|
+
### `campaign-pack`
|
|
145
|
+
Repurpose one source into a small campaign kit:
|
|
146
|
+
- Everything in `social-pack`
|
|
147
|
+
- External email intro/blurb
|
|
148
|
+
- Web excerpt
|
|
149
|
+
- SEO meta title and meta description
|
|
150
|
+
- 3 CTA variants
|
|
151
|
+
|
|
152
|
+
### `exec-pack`
|
|
153
|
+
Repurpose one source for internal leadership alignment:
|
|
154
|
+
- Internal email summary
|
|
155
|
+
- Slack/Teams update
|
|
156
|
+
- Executive-summary paragraph
|
|
157
|
+
- 3 talking points
|
|
158
|
+
- Decision/ask line if the source supports one
|
|
159
|
+
|
|
160
|
+
### `launch-pack`
|
|
161
|
+
Repurpose one source for an announcement:
|
|
162
|
+
- LinkedIn launch post
|
|
163
|
+
- Twitter/X launch post
|
|
164
|
+
- Slack/Teams launch note
|
|
165
|
+
- External email blurb
|
|
166
|
+
- Web hero headline/subheadline/CTA
|
|
167
|
+
- 3 CTA variants
|
|
168
|
+
|
|
169
|
+
### Long-Source Extraction Checklist
|
|
170
|
+
Before writing from a long source, identify:
|
|
171
|
+
- **Thesis:** the central argument or announcement
|
|
172
|
+
- **Audience:** who this is for
|
|
173
|
+
- **Proof:** facts, examples, data, names, dates, or quotes explicitly present
|
|
174
|
+
- **CTA:** what the reader should do next
|
|
175
|
+
- **Tone:** formal, conversational, punchy, executive, regenerative, etc.
|
|
176
|
+
- **Constraints:** length, compliance, brand voice, channel quirks
|
|
177
|
+
- **Gaps:** missing proof, missing CTA, unsupported claims, unclear audience
|
|
178
|
+
|
|
179
|
+
### Source-Fidelity Rules
|
|
180
|
+
- Do not invent statistics, dates, quotes, citations, partnerships, revenue,
|
|
181
|
+
legal claims, customer names, or outcomes.
|
|
182
|
+
- Do not upgrade tentative language into certainty.
|
|
183
|
+
- Do not turn illustrative examples into facts.
|
|
184
|
+
- Preserve caveats when they affect meaning.
|
|
185
|
+
- If a stronger hook needs a proof point the source does not provide, write a
|
|
186
|
+
proof-neutral hook instead.
|
|
187
|
+
- When assumptions are material, include a short "Assumptions:" line before the
|
|
188
|
+
deliverable rather than burying uncertainty in polished copy.
|
|
189
|
+
|
|
190
|
+
---
|
|
191
|
+
|
|
192
|
+
## § Content Repurposing Packs
|
|
193
|
+
|
|
194
|
+
When a pack is requested, label each output clearly and make every item
|
|
195
|
+
channel-native. A pack is not a generic summary repeated in several lengths.
|
|
196
|
+
|
|
197
|
+
### `social-pack` Output Shape
|
|
198
|
+
1. `LinkedIn thought-leadership post` — 900-1300 characters, hook-first, white space, Unicode emphasis only when useful, up to 3 hashtags.
|
|
199
|
+
2. `LinkedIn short variant` — 400-700 characters, announcement or teaser style.
|
|
200
|
+
3. `Twitter/X single post` — 265 characters or fewer unless the user asks otherwise.
|
|
201
|
+
4. `Twitter/X thread` — 5-7 tweets, each self-contained and below 280 characters.
|
|
202
|
+
5. `Slack/Teams internal share` — 3-6 lines, direct, with a clear FYI/action/decision framing.
|
|
203
|
+
|
|
204
|
+
### `campaign-pack` Output Shape
|
|
205
|
+
1. Full `social-pack`
|
|
206
|
+
2. `External email intro` — subject line plus 80-150 word blurb with one ask
|
|
207
|
+
3. `Web excerpt` — 80-120 words, scannable, CTA-ready
|
|
208
|
+
4. `Meta title` — 50-60 characters
|
|
209
|
+
5. `Meta description` — 150-160 characters
|
|
210
|
+
6. `CTA variants` — 3 verb-led CTAs
|
|
211
|
+
|
|
212
|
+
### `exec-pack` Output Shape
|
|
213
|
+
1. `Internal email summary` — subject plus 6-12 lines
|
|
214
|
+
2. `Slack/Teams update` — 3-5 lines
|
|
215
|
+
3. `Executive summary paragraph` — 100-150 words
|
|
216
|
+
4. `Talking points` — 3 concise bullets/fragments
|
|
217
|
+
5. `Decision or ask` — one line, only if supported by source
|
|
218
|
+
|
|
219
|
+
### `launch-pack` Output Shape
|
|
220
|
+
1. `LinkedIn launch post` — announcement structure
|
|
221
|
+
2. `Twitter/X launch post` — single post
|
|
222
|
+
3. `Slack/Teams launch note` — internal update
|
|
223
|
+
4. `External email blurb` — subject plus short body
|
|
224
|
+
5. `Web hero` — headline, subheadline, CTA
|
|
225
|
+
6. `CTA variants` — 3 options
|
|
226
|
+
|
|
227
|
+
### Pack Quality Rules
|
|
228
|
+
- Vary hooks by channel; do not repeat the same first sentence everywhere.
|
|
229
|
+
- Keep the source thesis consistent across all outputs.
|
|
230
|
+
- Adapt CTA strength to the channel: softer on thought leadership, direct in
|
|
231
|
+
email/web, concise in Slack.
|
|
232
|
+
- Use channel-specific formatting rules from the sections below.
|
|
233
|
+
- If source proof is weak, use curiosity and framing instead of inflated claims.
|
|
63
234
|
|
|
64
235
|
---
|
|
65
236
|
|