skills in order

This commit is contained in:
xx254
2026-04-02 20:55:07 +08:00
parent a69f0f0c37
commit 20e7638236
4 changed files with 110 additions and 21 deletions
+32 -2
View File
@@ -39,11 +39,31 @@ Voice: use whatever voice context exists in the conversation (e.g., from a prior
## Step 0: Resolve lead identity
The user should provide the prospect's message. For `lead_key`, use the same canonical key as `contracts/lead-artifact-contract.md`:
**First, check the registry for known leads.**
Read `state/linkedin-system-state.json`. Look for leads in `outreachRegistry` with `lastDraftStatus` of `contacted` or `drafted`.
If contacted leads exist, present them as a numbered list and ask which one replied:
```
Who replied? Pick a number or paste their message to auto-match:
1. [Name] @ [Company] — sent [lastDraftAt date]
2. [Name] @ [Company] — sent [lastDraftAt date]
...
Or type a name if they're not on this list.
```
Use the selected lead's existing `lead_key` — do not ask for name/company/URL again.
**Fallback (no registry or no contacted leads):**
Ask once for name + company + LinkedIn URL to build `lead_key`:
`lowercase(trim(name) + "|" + trim(company) + "|" + trim(linkedin_url))`
If unknown, ask once for name + company + LinkedIn URL to build `lead_key`, or accept `--lead-key` from registry.
Or accept `--lead-key` directly if provided.
---
@@ -175,6 +195,16 @@ Next trigger: [what response from them would prompt the next step]
URL to include: [yes / not yet — and when to include it]
```
Then immediately output this options block:
```
Your options:
- Send it — say "sent" and I'll log the outcome
- Another reply — say "reply from [name]" to handle the next one
- More leads — say "draft outreach" to continue with uncontacted leads
- Wrap up the campaign — run /campaign-retro to analyze what worked
```
---
## Step 6: Record outcome (when user reports what happened)