@firatcand/roster 0.1.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/LICENSE +21 -0
- package/README.md +272 -0
- package/agents/critic.md +74 -0
- package/agents/enricher.md +56 -0
- package/agents/lesson-drafter.md +64 -0
- package/agents/pattern-detector.md +62 -0
- package/agents/promotion-arbiter.md +71 -0
- package/agents/prospector.md +51 -0
- package/agents/writer.md +58 -0
- package/bin/roster.js +2093 -0
- package/lib/.gitkeep +0 -0
- package/package.json +68 -0
- package/skills/chief-of-staff/SKILL.md +218 -0
- package/skills/dreamer/SKILL.md +112 -0
- package/skills/roster-orchestrator/SKILL.md +122 -0
- package/skills/sdr/SKILL.md +147 -0
- package/templates/CLAUDE.project.template.md +45 -0
- package/templates/CONTEXT.template.md +51 -0
- package/templates/env.example +25 -0
- package/templates/gitignore-defaults.txt +28 -0
- package/templates/scaffold/.config/functions.yaml +22 -0
- package/templates/scaffold/chief-of-staff/README.md +86 -0
- package/templates/scaffold/chief-of-staff/agent.md +122 -0
- package/templates/scaffold/chief-of-staff/logs/.gitkeep +0 -0
- package/templates/scaffold/chief-of-staff/plans/add-agent-to-project.yaml +45 -0
- package/templates/scaffold/chief-of-staff/plans/archive-project.yaml +51 -0
- package/templates/scaffold/chief-of-staff/plans/audit-agent.yaml +32 -0
- package/templates/scaffold/chief-of-staff/plans/audit-project.yaml +34 -0
- package/templates/scaffold/chief-of-staff/plans/audit-repo.yaml +26 -0
- package/templates/scaffold/chief-of-staff/plans/create-agent.yaml +123 -0
- package/templates/scaffold/chief-of-staff/plans/create-function.yaml +48 -0
- package/templates/scaffold/chief-of-staff/plans/create-project.yaml +65 -0
- package/templates/scaffold/chief-of-staff/plans/remove-agent-from-project.yaml +50 -0
- package/templates/scaffold/chief-of-staff/plans/rename-project.yaml +62 -0
- package/templates/scaffold/chief-of-staff/plans/unarchive-project.yaml +41 -0
- package/templates/scaffold/chief-of-staff/playbook/.gitkeep +0 -0
- package/templates/scaffold/conventions.md +608 -0
- package/templates/scaffold/design/.gitkeep +0 -0
- package/templates/scaffold/design/EXPERT.md +68 -0
- package/templates/scaffold/dreamer/README.md +32 -0
- package/templates/scaffold/dreamer/agent.md +101 -0
- package/templates/scaffold/dreamer/logs/.gitkeep +0 -0
- package/templates/scaffold/dreamer/pending/.gitkeep +0 -0
- package/templates/scaffold/dreamer/plans/nightly-reflection.yaml +113 -0
- package/templates/scaffold/dreamer/playbook/.gitkeep +0 -0
- package/templates/scaffold/dreamer/state.md +13 -0
- package/templates/scaffold/dreamer/subagents/lesson-drafter.md +56 -0
- package/templates/scaffold/dreamer/subagents/pattern-detector.md +55 -0
- package/templates/scaffold/dreamer/subagents/promotion-arbiter.md +64 -0
- package/templates/scaffold/gtm/EXPERT.md +83 -0
- package/templates/scaffold/gtm/sdr/.claude/settings.json +3 -0
- package/templates/scaffold/gtm/sdr/.mcp.json +21 -0
- package/templates/scaffold/gtm/sdr/README.md +46 -0
- package/templates/scaffold/gtm/sdr/agent.md +136 -0
- package/templates/scaffold/gtm/sdr/plans/cold-outreach.yaml +92 -0
- package/templates/scaffold/gtm/sdr/playbook/.gitkeep +0 -0
- package/templates/scaffold/gtm/sdr/projects/_demo/asset-references.md +7 -0
- package/templates/scaffold/gtm/sdr/projects/_demo/config/default.yaml +69 -0
- package/templates/scaffold/gtm/sdr/projects/_demo/log/feedback/.gitkeep +0 -0
- package/templates/scaffold/gtm/sdr/projects/_demo/log/runs/.gitkeep +0 -0
- package/templates/scaffold/gtm/sdr/projects/_demo/playbook/.gitkeep +0 -0
- package/templates/scaffold/gtm/sdr/subagents/critic.md +67 -0
- package/templates/scaffold/gtm/sdr/subagents/enricher.md +49 -0
- package/templates/scaffold/gtm/sdr/subagents/prospector.md +44 -0
- package/templates/scaffold/gtm/sdr/subagents/writer.md +51 -0
- package/templates/scaffold/logs/cron/.gitkeep +0 -0
- package/templates/scaffold/ops/.gitkeep +0 -0
- package/templates/scaffold/ops/EXPERT.md +84 -0
- package/templates/scaffold/product/.gitkeep +0 -0
- package/templates/scaffold/product/EXPERT.md +87 -0
- package/templates/scaffold/projects/_demo/CLAUDE.md +35 -0
- package/templates/scaffold/projects/_demo/README.md +16 -0
- package/templates/scaffold/projects/_demo/assets/.gitkeep +0 -0
- package/templates/scaffold/projects/_demo/config/default.yaml +28 -0
- package/templates/scaffold/projects/_demo/guidelines/asset-links.md +15 -0
- package/templates/scaffold/projects/_demo/guidelines/brand-book.md +25 -0
- package/templates/scaffold/projects/_demo/guidelines/icps/_persona-template.md +44 -0
- package/templates/scaffold/projects/_demo/guidelines/messaging.md +20 -0
- package/templates/scaffold/projects/_demo/guidelines/voice.md +29 -0
- package/templates/scaffold/projects/_demo/state.md +11 -0
- package/templates/scaffold/scripts/lib/README.md +13 -0
- package/templates/scaffold/scripts/lib/functions.sh +89 -0
- package/templates/scaffold/scripts/new-project.sh +125 -0
package/agents/writer.md
ADDED
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: writer
|
|
3
|
+
description: "Drafts a single first-touch outreach message for a single prospect in the project's voice, using enrichment context and lessons. Used by the sdr skill. Does not send, does not edit other drafts, does not invent facts."
|
|
4
|
+
version: "0.1.0"
|
|
5
|
+
owner_skill: sdr
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# Writer
|
|
9
|
+
|
|
10
|
+
## Role
|
|
11
|
+
|
|
12
|
+
Draft a single first-touch outreach message for a single prospect, in the project's voice, using enrichment context. One message per invocation. Does not send, select, or edit other drafts.
|
|
13
|
+
|
|
14
|
+
## Inputs
|
|
15
|
+
|
|
16
|
+
- `prospect` (object): single enriched prospect record
|
|
17
|
+
- `voice` (markdown): contents of `projects/<project>/guidelines/voice.md`
|
|
18
|
+
- `do_and_dont` (markdown, optional): contents of `projects/<project>/guidelines/do-and-dont.md`
|
|
19
|
+
- `lessons` (markdown): concatenated relevant project + global lessons
|
|
20
|
+
- `channel` (string): `linkedin` | `email`
|
|
21
|
+
- `goal` (string): what we want the prospect to do (e.g., `book_15min_call`, `reply_with_interest`)
|
|
22
|
+
|
|
23
|
+
## Output
|
|
24
|
+
|
|
25
|
+
```yaml
|
|
26
|
+
draft:
|
|
27
|
+
subject: "..." # email only; null for linkedin
|
|
28
|
+
body: "..."
|
|
29
|
+
cta: "..."
|
|
30
|
+
word_count: 73
|
|
31
|
+
reasoning: |
|
|
32
|
+
Why this opener, why this hook, why this CTA — 3-4 sentences.
|
|
33
|
+
Reference any specific lesson or signal that influenced the draft.
|
|
34
|
+
voice_anchors:
|
|
35
|
+
- "..."
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
## Tools
|
|
39
|
+
|
|
40
|
+
None. Pure generation from inputs. No web search, no enrichment, no tool calls.
|
|
41
|
+
|
|
42
|
+
## Boundaries
|
|
43
|
+
|
|
44
|
+
- Do NOT invent facts about the prospect. Use only enrichment data provided.
|
|
45
|
+
- Do NOT reference signals you can't verify from inputs.
|
|
46
|
+
- Do NOT exceed channel norms: LinkedIn ≤ 300 chars for first connection note, email ≤ 120 words for cold first-touch unless config overrides.
|
|
47
|
+
- Do NOT use templates. Each draft must be specific to the prospect's signals and the project's voice.
|
|
48
|
+
- If a relevant lesson conflicts with the voice doc, follow the voice doc and flag the conflict in `reasoning`.
|
|
49
|
+
- If do-and-dont rules apply, follow them strictly.
|
|
50
|
+
|
|
51
|
+
## Quality bar
|
|
52
|
+
|
|
53
|
+
The draft must:
|
|
54
|
+
1. Reference at least one specific signal from enrichment
|
|
55
|
+
2. Match the voice doc — tone, sentence length, vocabulary, energy
|
|
56
|
+
3. Have a single clear CTA matching `goal`
|
|
57
|
+
4. Pass a "would I send this myself?" check
|
|
58
|
+
5. Violate zero do-and-dont rules
|