fix(portable): Gemini keys, Telegram pairing UI, and config durability

Improve first-run and channel setup for non-technical users: detect newer
Gemini key formats, pin Node 22.22.3, add Control Panel Telegram approve
flow, and keep channels/models when config is rewritten. Persist uclaw
wizard state via uclaw-meta.json so restarts skip language/persona prompts.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
2026-08-18 18:45:03 +08:00
parent 0be8c3e3fe
commit dd8e0f55c3
35 changed files with 2673 additions and 34 deletions

View File

@@ -0,0 +1,77 @@
---
name: email-campaign
description: "Marketing and outreach email - subject lines, structure, and not getting marked as spam"
metadata: { "openclaw": { "emoji": "✉️" } }
---
# Email Campaigns
Newsletters, product announcements and outreach.
## Subject lines
The only part most recipients read. A good one is specific and short enough to
survive a phone's inbox — roughly 40 characters.
| Weak | Better |
|---|---|
| "Our January Newsletter" | "We cut setup from 20 minutes to 3" |
| "Exciting product update!" | "Export to Excel is live" |
| "Quick question" | "Question about your Q3 rollout" |
Avoid: ALL CAPS, three exclamation marks, "RE:" on a mail that is not a reply,
and fake urgency. These are also the things spam filters weigh.
## Structure
```
One line Why this email exists
The point What changed, what you are offering, what you want
One action A single link or ask
Sign-off A real name
```
**One ask per email.** Two links means neither gets clicked.
## Preview text
The line after the subject in most clients. It is a second subject line, and
leaving it to default means the recipient reads "View this email in your
browser". Write it.
## Landing in the inbox
- Send from a real person's address, not `noreply@`
- Working unsubscribe link, honoured immediately — in Singapore this is a legal
requirement under the PDPA, not a courtesy
- Do not attach; link instead
- Plain-text-ish beats a heavy template for anything that is meant to read as
personal
## Cold outreach
Different rules. Reference something specific about them in the first line — if
you cannot, you are not ready to send it. Keep it under 120 words. Ask for a
reply, not a meeting.
## Example prompts
```
Announcement email for this release — one ask, keep it short
```
```
Five subject lines for this, no hype
```
```
Rewrite this cold email — it reads like a template
```
## Working notes
- Ask who the list is and what they last heard from you. An email to people who
signed up last week is not the same as one to a year-old list.
- Never invent a personalisation detail in outreach. Getting it wrong is worse
than sending something generic.
- Do not send anything on the user's behalf. Draft it; they send it.