cue-ai 0.9.2 → 0.9.4

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.
Files changed (278) hide show
  1. package/CHANGELOG.md +4 -3
  2. package/README.md +154 -394
  3. package/bin/cue-learnings +30 -4
  4. package/bin/cue-review-progress +0 -0
  5. package/bin/cue-review-watch +0 -0
  6. package/dist/cue.js +4328 -3108
  7. package/package.json +1 -1
  8. package/plugins/cue/commands/cue-switch.md +1 -1
  9. package/plugins/cue/commands/cue.md +1 -1
  10. package/profiles/backend/profile.yaml +4 -0
  11. package/profiles/browser/profile.yaml +4 -0
  12. package/profiles/career/profile.yaml +2 -13
  13. package/profiles/commerce/profile.yaml +0 -2
  14. package/profiles/coolify/profile.yaml +0 -1
  15. package/profiles/core/profile.yaml +78 -11
  16. package/profiles/dash-merge-test/profile.yaml +6 -1
  17. package/profiles/designer/profile.yaml +9 -1
  18. package/profiles/dropshipping/profile.yaml +69 -0
  19. package/profiles/frontend/profile.yaml +4 -0
  20. package/profiles/google-ads/profile.yaml +34 -0
  21. package/profiles/google-analytics/profile.yaml +34 -0
  22. package/profiles/google-drive/profile.yaml +34 -0
  23. package/profiles/gstack/profile.yaml +117 -29
  24. package/profiles/marketing/profile.yaml +0 -1
  25. package/profiles/media/README.md +70 -0
  26. package/profiles/media/profile.yaml +104 -0
  27. package/profiles/nano-banana/profile.yaml +52 -0
  28. package/profiles/ops/profile.yaml +1 -2
  29. package/profiles/secops/profile.yaml +3 -0
  30. package/profiles/skill-writer/profile.yaml +15 -0
  31. package/profiles/video/profile.yaml +3 -0
  32. package/profiles/web-frontend-base/profile.yaml +6 -0
  33. package/profiles/webshop/profile.yaml +0 -1
  34. package/profiles/webshop-google/profile.yaml +1 -0
  35. package/profiles/x-growth-bot/profile.yaml +2 -0
  36. package/resources/icons/generate-icons.py +2 -128
  37. package/resources/mcps/configs/claude.sanitized.json +88 -20
  38. package/resources/mcps/configs/claude_runtime.sanitized.json +40 -1
  39. package/resources/mcps/configs/codex.sanitized.json +29 -0
  40. package/resources/skills/skills/career/job-hunter/LICENSE +21 -0
  41. package/resources/skills/skills/career/job-hunter/README.md +323 -0
  42. package/resources/skills/skills/career/job-hunter/SKILL.md +91 -0
  43. package/resources/skills/skills/career/job-hunter/agents/README.md +96 -0
  44. package/resources/skills/skills/career/job-hunter/agents/apply-assessment-prep.md +195 -0
  45. package/resources/skills/skills/career/job-hunter/agents/apply-ats-scan.md +155 -0
  46. package/resources/skills/skills/career/job-hunter/agents/apply-bias-audit.md +224 -0
  47. package/resources/skills/skills/career/job-hunter/agents/apply-cover-letter.md +69 -0
  48. package/resources/skills/skills/career/job-hunter/agents/apply-decode-jd.md +117 -0
  49. package/resources/skills/skills/career/job-hunter/agents/apply-fit-score.md +183 -0
  50. package/resources/skills/skills/career/job-hunter/agents/apply-linkedin-audit.md +74 -0
  51. package/resources/skills/skills/career/job-hunter/agents/apply-linkedin-scrape.md +255 -0
  52. package/resources/skills/skills/career/job-hunter/agents/apply-portfolio-brief.md +123 -0
  53. package/resources/skills/skills/career/job-hunter/agents/apply-reality-check.md +164 -0
  54. package/resources/skills/skills/career/job-hunter/agents/apply-reference-prep.md +150 -0
  55. package/resources/skills/skills/career/job-hunter/agents/apply-rejection-analysis.md +172 -0
  56. package/resources/skills/skills/career/job-hunter/agents/apply-resume.md +70 -0
  57. package/resources/skills/skills/career/job-hunter/agents/apply-skills-gap-filler.md +109 -0
  58. package/resources/skills/skills/career/job-hunter/agents/career-internal.md +94 -0
  59. package/resources/skills/skills/career/job-hunter/agents/career-linkedin-content.md +173 -0
  60. package/resources/skills/skills/career/job-hunter/agents/career-linkedin-scanner.md +262 -0
  61. package/resources/skills/skills/career/job-hunter/agents/career-network-message.md +108 -0
  62. package/resources/skills/skills/career/job-hunter/agents/career-promote.md +102 -0
  63. package/resources/skills/skills/career/job-hunter/agents/career-review.md +71 -0
  64. package/resources/skills/skills/career/job-hunter/agents/interview-debrief.md +117 -0
  65. package/resources/skills/skills/career/job-hunter/agents/interview-mock.md +171 -0
  66. package/resources/skills/skills/career/job-hunter/agents/interview-panel-decoder.md +152 -0
  67. package/resources/skills/skills/career/job-hunter/agents/interview-prep.md +184 -0
  68. package/resources/skills/skills/career/job-hunter/agents/interview-question-bank.md +133 -0
  69. package/resources/skills/skills/career/job-hunter/agents/interview-research.md +148 -0
  70. package/resources/skills/skills/career/job-hunter/agents/offer-compare.md +117 -0
  71. package/resources/skills/skills/career/job-hunter/agents/offer-counteroffer.md +144 -0
  72. package/resources/skills/skills/career/job-hunter/agents/offer-deadline-manager.md +148 -0
  73. package/resources/skills/skills/career/job-hunter/agents/offer-negotiate.md +126 -0
  74. package/resources/skills/skills/career/job-hunter/agents/offer-schedule.md +99 -0
  75. package/resources/skills/skills/career/job-hunter/agents/offer-thankyou.md +80 -0
  76. package/resources/skills/skills/career/job-hunter/agents/search-company-research.md +146 -0
  77. package/resources/skills/skills/career/job-hunter/agents/search-follow-up.md +129 -0
  78. package/resources/skills/skills/career/job-hunter/agents/search-ghost-job-detector.md +152 -0
  79. package/resources/skills/skills/career/job-hunter/agents/search-inbox-scan.md +193 -0
  80. package/resources/skills/skills/career/job-hunter/agents/search-interview-scorecard.md +164 -0
  81. package/resources/skills/skills/career/job-hunter/agents/search-jobs.md +149 -0
  82. package/resources/skills/skills/career/job-hunter/agents/search-momentum-check.md +194 -0
  83. package/resources/skills/skills/career/job-hunter/agents/search-outreach.md +85 -0
  84. package/resources/skills/skills/career/job-hunter/agents/search-referral-finder.md +124 -0
  85. package/resources/skills/skills/career/job-hunter/agents/search-salary.md +96 -0
  86. package/resources/skills/skills/career/job-hunter/agents/search-send-email.md +109 -0
  87. package/resources/skills/skills/career/job-hunter/agents/search-tracker-update.md +127 -0
  88. package/resources/skills/skills/career/job-hunter/inputs/README.md +26 -0
  89. package/resources/skills/skills/career/job-hunter/inputs/apply-linkedin-url.txt +8 -0
  90. package/resources/skills/skills/career/job-hunter/inputs/interview-context.md +24 -0
  91. package/resources/skills/skills/career/job-hunter/inputs/job-description.md +20 -0
  92. package/resources/skills/skills/career/job-hunter/inputs/job-search-criteria.md +36 -0
  93. package/resources/skills/skills/career/job-hunter/inputs/my-linkedin.md +24 -0
  94. package/resources/skills/skills/career/job-hunter/inputs/my-resume.md +28 -0
  95. package/resources/skills/skills/career/job-hunter/inputs/search-outreach-target.md +24 -0
  96. package/resources/skills/skills/career/job-hunter/rules/README.md +37 -0
  97. package/resources/skills/skills/career/job-hunter/rules/writing-rules.md +81 -0
  98. package/resources/skills/skills/design/banana/SKILL.md +375 -0
  99. package/resources/skills/skills/design/banana/references/cost-tracking.md +47 -0
  100. package/resources/skills/skills/design/banana/references/gemini-models.md +236 -0
  101. package/resources/skills/skills/design/banana/references/mcp-tools.md +145 -0
  102. package/resources/skills/skills/design/banana/references/post-processing.md +192 -0
  103. package/resources/skills/skills/design/banana/references/presets.md +69 -0
  104. package/resources/skills/skills/design/banana/references/prompt-engineering.md +481 -0
  105. package/resources/skills/skills/design/banana/scripts/batch.py +97 -0
  106. package/resources/skills/skills/design/banana/scripts/cost_tracker.py +191 -0
  107. package/resources/skills/skills/design/banana/scripts/edit.py +159 -0
  108. package/resources/skills/skills/design/banana/scripts/generate.py +168 -0
  109. package/resources/skills/skills/design/banana/scripts/presets.py +154 -0
  110. package/resources/skills/skills/design/banana/scripts/setup_mcp.py +151 -0
  111. package/resources/skills/skills/design/banana/scripts/validate_setup.py +133 -0
  112. package/resources/skills/skills/gstack/ship/SKILL.md +13 -0
  113. package/resources/skills/skills/media/3d-logo-animation/SKILL.md +59 -0
  114. package/resources/skills/skills/media/action-figure-generator/SKILL.md +48 -0
  115. package/resources/skills/skills/media/ad-creative/SKILL.md +79 -0
  116. package/resources/skills/skills/media/ai-clipping/SKILL.md +194 -0
  117. package/resources/skills/skills/media/ai-clipping/scripts/run-ai-clipping.sh +200 -0
  118. package/resources/skills/skills/media/ai-fight-scene/SKILL.md +132 -0
  119. package/resources/skills/skills/media/amazon-product-listing/SKILL.md +68 -0
  120. package/resources/skills/skills/media/animal-video-generator/SKILL.md +59 -0
  121. package/resources/skills/skills/media/award-ceremony-video/SKILL.md +87 -0
  122. package/resources/skills/skills/media/blog-header/SKILL.md +61 -0
  123. package/resources/skills/skills/media/brand-kit/SKILL.md +72 -0
  124. package/resources/skills/skills/media/brochures/SKILL.md +65 -0
  125. package/resources/skills/skills/media/cartoon-dance-animation/SKILL.md +62 -0
  126. package/resources/skills/skills/media/character-story-video/SKILL.md +84 -0
  127. package/resources/skills/skills/media/chibi-collage-effect/SKILL.md +63 -0
  128. package/resources/skills/skills/media/cinema-director/SKILL.md +93 -0
  129. package/resources/skills/skills/media/cinema-director/scripts/generate-film.sh +78 -0
  130. package/resources/skills/skills/media/color-analysis-board/SKILL.md +71 -0
  131. package/resources/skills/skills/media/core-edit/SKILL.md +48 -0
  132. package/resources/skills/skills/media/core-edit/edit-image.sh +54 -0
  133. package/resources/skills/skills/media/core-edit/enhance-image.sh +191 -0
  134. package/resources/skills/skills/media/core-edit/lipsync.sh +144 -0
  135. package/resources/skills/skills/media/core-edit/video-effects.sh +193 -0
  136. package/resources/skills/skills/media/core-media/SKILL.md +49 -0
  137. package/resources/skills/skills/media/core-media/create-music.sh +169 -0
  138. package/resources/skills/skills/media/core-media/generate-image.sh +161 -0
  139. package/resources/skills/skills/media/core-media/generate-video.sh +137 -0
  140. package/resources/skills/skills/media/core-media/image-to-video.sh +228 -0
  141. package/resources/skills/skills/media/core-media/schema_data.json +18708 -0
  142. package/resources/skills/skills/media/core-media/upload.sh +41 -0
  143. package/resources/skills/skills/media/core-platform/SKILL.md +41 -0
  144. package/resources/skills/skills/media/core-platform/check-result.sh +37 -0
  145. package/resources/skills/skills/media/core-platform/setup.sh +31 -0
  146. package/resources/skills/skills/media/couple-grid-creator/SKILL.md +47 -0
  147. package/resources/skills/skills/media/design-guide/SKILL.md +73 -0
  148. package/resources/skills/skills/media/drone-style-video/SKILL.md +61 -0
  149. package/resources/skills/skills/media/fashion-try-on/SKILL.md +61 -0
  150. package/resources/skills/skills/media/floor-plan-rendering/SKILL.md +56 -0
  151. package/resources/skills/skills/media/freeze-effect-video/SKILL.md +100 -0
  152. package/resources/skills/skills/media/giant-product-showcase/SKILL.md +61 -0
  153. package/resources/skills/skills/media/instagram-post/SKILL.md +58 -0
  154. package/resources/skills/skills/media/interior-design/SKILL.md +61 -0
  155. package/resources/skills/skills/media/interior-design-visualizer/SKILL.md +57 -0
  156. package/resources/skills/skills/media/jewelry-product-video/SKILL.md +61 -0
  157. package/resources/skills/skills/media/kdenlive/SKILL.md +106 -0
  158. package/resources/skills/skills/media/kdenlive/scripts/assemble.sh +57 -0
  159. package/resources/skills/skills/media/kdenlive/scripts/common.sh +30 -0
  160. package/resources/skills/skills/media/kdenlive/scripts/inspect.sh +19 -0
  161. package/resources/skills/skills/media/kdenlive/scripts/reframe.sh +22 -0
  162. package/resources/skills/skills/media/kdenlive/scripts/render.sh +16 -0
  163. package/resources/skills/skills/media/kdenlive/scripts/title-card.sh +25 -0
  164. package/resources/skills/skills/media/keyboard-art-maker/SKILL.md +44 -0
  165. package/resources/skills/skills/media/logo-branding/SKILL.md +70 -0
  166. package/resources/skills/skills/media/logo-creator/SKILL.md +80 -0
  167. package/resources/skills/skills/media/logo-creator/scripts/create-logo.sh +38 -0
  168. package/resources/skills/skills/media/logo-generator/SKILL.md +56 -0
  169. package/resources/skills/skills/media/multi-angle-reshoot/SKILL.md +70 -0
  170. package/resources/skills/skills/media/multi-angle-shots/SKILL.md +73 -0
  171. package/resources/skills/skills/media/music-video/SKILL.md +61 -0
  172. package/resources/skills/skills/media/nano-banana/SKILL.md +80 -0
  173. package/resources/skills/skills/media/nano-banana/scripts/generate-nano-art.sh +54 -0
  174. package/resources/skills/skills/media/one-shot-video/SKILL.md +56 -0
  175. package/resources/skills/skills/media/photo-pack-generator/SKILL.md +205 -0
  176. package/resources/skills/skills/media/photo-pack-generator/scripts/generate-pack.sh +241 -0
  177. package/resources/skills/skills/media/product-ad-cinematic/SKILL.md +78 -0
  178. package/resources/skills/skills/media/product-campaign/SKILL.md +76 -0
  179. package/resources/skills/skills/media/product-showcase-video/SKILL.md +60 -0
  180. package/resources/skills/skills/media/product-video-ad-maker/SKILL.md +59 -0
  181. package/resources/skills/skills/media/rednote-cover/SKILL.md +57 -0
  182. package/resources/skills/skills/media/seedance-2/SKILL.md +632 -0
  183. package/resources/skills/skills/media/seedance-2/scripts/generate-seedance.sh +701 -0
  184. package/resources/skills/skills/media/selfie-with-celebrities/SKILL.md +64 -0
  185. package/resources/skills/skills/media/social-media-video/SKILL.md +277 -0
  186. package/resources/skills/skills/media/social-media-video/scripts/run-social-video.sh +316 -0
  187. package/resources/skills/skills/media/social-pack/SKILL.md +58 -0
  188. package/resources/skills/skills/media/storyboard/SKILL.md +57 -0
  189. package/resources/skills/skills/media/storyboard-to-cooking-video/SKILL.md +143 -0
  190. package/resources/skills/skills/media/talking-baby-video/SKILL.md +57 -0
  191. package/resources/skills/skills/media/ugc-ads-workflow/SKILL.md +70 -0
  192. package/resources/skills/skills/media/ugc-lifestyle-try-on/SKILL.md +65 -0
  193. package/resources/skills/skills/media/ugc-video-factory/SKILL.md +134 -0
  194. package/resources/skills/skills/media/ui-design/SKILL.md +81 -0
  195. package/resources/skills/skills/media/ui-design/scripts/generate-mockup.sh +49 -0
  196. package/resources/skills/skills/media/url-to-design/SKILL.md +61 -0
  197. package/resources/skills/skills/media/workflow/SKILL.md +197 -0
  198. package/resources/skills/skills/media/workflow/scripts/discover-workflow.sh +18 -0
  199. package/resources/skills/skills/media/workflow/scripts/generate-workflow.sh +33 -0
  200. package/resources/skills/skills/media/workflow/scripts/interactive-run.sh +16 -0
  201. package/resources/skills/skills/media/workflow/scripts/list-workflows.sh +20 -0
  202. package/resources/skills/skills/media/workflow/scripts/run-workflow.sh +34 -0
  203. package/resources/skills/skills/media/youtube-shorts/SKILL.md +173 -0
  204. package/resources/skills/skills/media/youtube-shorts/scripts/run-youtube-shorts.sh +141 -0
  205. package/resources/skills/skills/media/youtube-thumbnail/SKILL.md +66 -0
  206. package/resources/skills/skills/meta/cue-developer/references/architecture.md +2 -2
  207. package/resources/skills/skills/meta/cue-usage/SKILL.md +1 -1
  208. package/resources/skills/skills/meta/profile-fit-monitor/SKILL.md +2 -2
  209. package/resources/skills/skills/meta/profile-optimizer/SKILL.md +1 -1
  210. package/resources/skills/skills/meta/profile-suggest/SKILL.md +7 -7
  211. package/resources/skills/skills/meta/profile-summon/SKILL.md +159 -0
  212. package/resources/skills/skills/meta/profile-summon/evals/evals.json +53 -0
  213. package/resources/skills/skills/meta/save-profile/SKILL.md +1 -1
  214. package/resources/skills/skills/meta/skill-reviewer/SKILL.md +3 -0
  215. package/resources/skills/skills/meta/skill-reviewer/references/tdd-for-skills.md +55 -0
  216. package/resources/skills/skills/research/find-skills/SKILL.md +1 -1
  217. package/resources/skills/skills/review/code-review-deep/SKILL.md +20 -0
  218. package/resources/skills/skills/security/trivy-scan/SKILL.md +139 -0
  219. package/resources/skills/skills/security/trivy-scan/scripts/ensure-trivy.sh +21 -0
  220. package/resources/skills/skills/tools/ccusage/SKILL.md +142 -0
  221. package/src/commands/_index.ts +8 -0
  222. package/src/commands/ai.ts +2 -2
  223. package/src/commands/auto-detect.test.ts +74 -0
  224. package/src/commands/auto-detect.ts +9 -7
  225. package/src/commands/cli.test.ts +20 -4
  226. package/src/commands/cli.ts +36 -20
  227. package/src/commands/create-profile.ts +2 -2
  228. package/src/commands/debug.ts +2 -2
  229. package/src/commands/discover.ts +14 -4
  230. package/src/commands/export-docker.ts +1 -1
  231. package/src/commands/features-batch1.test.ts +1 -1
  232. package/src/commands/gates.ts +1 -1
  233. package/src/commands/import-profile.ts +1 -1
  234. package/src/commands/init.ts +15 -11
  235. package/src/commands/install.test.ts +192 -0
  236. package/src/commands/install.ts +610 -0
  237. package/src/commands/launch-handoff.e2e.test.ts +33 -1
  238. package/src/commands/launch.e2e.test.ts +15 -10
  239. package/src/commands/launch.ts +73 -116
  240. package/src/commands/materialize.ts +2 -2
  241. package/src/commands/prune.ts +1 -1
  242. package/src/commands/security-audit.ts +1 -1
  243. package/src/commands/shell.ts +7 -7
  244. package/src/commands/skill-report.ts +1 -1
  245. package/src/commands/skills.ts +3 -3
  246. package/src/commands/snapshot.ts +2 -2
  247. package/src/commands/summon.test.ts +116 -0
  248. package/src/commands/summon.ts +338 -0
  249. package/src/commands/trigger-gaps.ts +1 -1
  250. package/src/commands/use.ts +47 -3
  251. package/src/commands/watch-live.ts +5 -5
  252. package/src/commands/watch.ts +8 -8
  253. package/src/index.ts +2 -0
  254. package/src/lib/active-sessions.test.ts +3 -3
  255. package/src/lib/active-sessions.ts +4 -4
  256. package/src/lib/auto-detect.test.ts +172 -8
  257. package/src/lib/auto-detect.ts +191 -136
  258. package/src/lib/codex-persona-parity.test.ts +58 -0
  259. package/src/lib/companion-detect.test.ts +43 -1
  260. package/src/lib/companion-detect.ts +35 -0
  261. package/src/lib/credentials-sync.test.ts +121 -1
  262. package/src/lib/credentials-sync.ts +95 -1
  263. package/src/lib/cwd-resolver.test.ts +8 -8
  264. package/src/lib/cwd-resolver.ts +2 -2
  265. package/src/lib/dashboard-merge.test.ts +9 -4
  266. package/src/lib/dashboard-server.ts +1 -1
  267. package/src/lib/picker.test.ts +1 -1
  268. package/src/lib/picker.ts +5 -5
  269. package/src/lib/profile-merge.test.ts +8 -0
  270. package/src/lib/profile-names.test.ts +3 -3
  271. package/src/lib/runtime-install.ts +166 -0
  272. package/src/lib/runtime-materializer.test.ts +137 -0
  273. package/src/lib/runtime-materializer.ts +105 -2
  274. package/src/lib/skill-router.test.ts +38 -0
  275. package/src/lib/skill-router.ts +65 -4
  276. package/profiles/eu-tender-research/README.md +0 -48
  277. package/profiles/eu-tender-research/logo.png +0 -0
  278. package/profiles/eu-tender-research/profile.yaml +0 -108
@@ -0,0 +1,124 @@
1
+ # Referral Finder
2
+
3
+ ## What This Does
4
+
5
+ Builds a targeted outreach list for a specific role — people who can
6
+ get your resume in front of the hiring manager before it hits the ATS.
7
+
8
+ Referrals convert at 3-5x the rate of cold applications. Most candidates
9
+ skip this step because they don't know who to reach out to or what to say.
10
+ This agent finds the right people and writes the right message for each one.
11
+
12
+ ## Instructions for Claude Code
13
+
14
+ ### Step 1 — Load inputs
15
+
16
+ Read `inputs/my-resume.md`.
17
+ Read `inputs/job-description.md`.
18
+ Read `rules/writing-rules.md`.
19
+
20
+ Extract from the JD:
21
+ - Company name
22
+ - Role title and department
23
+ - Seniority level
24
+ - Key skills and tools mentioned
25
+
26
+ ### Step 2 — Build the target list
27
+
28
+ Identify 5 types of people worth reaching out to for this specific role:
29
+
30
+ **Tier 1 — Highest conversion (contact first)**
31
+ 1. Former employees of the company who now work elsewhere
32
+ - They know the culture, the team, and can give you an honest read
33
+ - They may still have relationships inside
34
+ - Best found on LinkedIn: search "[Company] Alumni"
35
+
36
+ 2. Current employees in the same department
37
+ - Peer-level contact, not the hiring manager
38
+ - Can refer you internally or at minimum answer questions about the role
39
+ - Search LinkedIn: "[Company] + [Department/Role Title]"
40
+
41
+ **Tier 2 — Warm path**
42
+ 3. People in your network who work at the company in any role
43
+ - Even a weak tie is better than a cold application
44
+ - Search your LinkedIn 1st and 2nd connections filtered by company
45
+
46
+ 4. People who made the same career transition you're making
47
+ - Someone who moved from your current role/company type to this type of role
48
+ - They can tell you what the transition actually looks like and who helped them
49
+
50
+ **Tier 3 — Long shot but worth it**
51
+ 5. The hiring manager (if identifiable)
52
+ - Only reach out directly if you have a specific, compelling reason
53
+ - Most effective when you can reference shared work, a specific project of theirs, or a mutual connection
54
+
55
+ ### Step 3 — Write outreach messages
56
+
57
+ For each tier, write a message template tailored to this specific role and company.
58
+
59
+ **Format for each message:**
60
+
61
+ ---
62
+ **[TIER] — [Who to target]**
63
+ **Find them:** [Specific LinkedIn search or method]
64
+ **What to say:**
65
+
66
+ [Message — 60-90 words max. No "Hi". No "I hope this message finds you well."
67
+ Lead with a specific, genuine reason for reaching out. Ask one clear question.
68
+ Never ask for a referral in the first message — build the relationship first.]
69
+
70
+ ---
71
+
72
+ ### Step 4 — Write the search strategy
73
+
74
+ Provide a step-by-step search playbook:
75
+
76
+ ```
77
+ REFERRAL SEARCH PLAYBOOK
78
+ Company: [name]
79
+ Role: [title]
80
+ ─────────────────────────────────────────
81
+
82
+ STEP 1 — LinkedIn search (do this first, 20 minutes)
83
+ [Specific search strings to use]
84
+
85
+ STEP 2 — Check your existing network
86
+ [Who to look for in 1st/2nd connections]
87
+
88
+ STEP 3 — Alumni networks
89
+ [Relevant schools, companies, or communities]
90
+
91
+ STEP 4 — Outreach sequence
92
+ Week 1: Contact Tier 1 targets (2-3 people)
93
+ Week 2: Follow up + contact Tier 2 (2-3 people)
94
+ Week 3: Follow up on warm responses
95
+ ─────────────────────────────────────────
96
+
97
+ WHAT TO DO IF THEY RESPOND
98
+ [Specific guidance on how to move the conversation forward]
99
+
100
+ WHAT NOT TO DO
101
+ - Don't ask for a referral before building any relationship
102
+ - Don't message more than 3 people at the same company simultaneously
103
+ - Don't send the same message to multiple people
104
+ ```
105
+
106
+ ### Step 5 — Save output
107
+
108
+ Write to `outputs/referral-finder.md`.
109
+
110
+ Tell the user:
111
+ > Referral playbook ready. outputs/referral-finder.md
112
+ >
113
+ > Start with Tier 1. One warm intro from a former employee
114
+ > is worth 20 cold applications.
115
+
116
+ ## ✅ What to do next
117
+
118
+ ```
119
+ npm run outreach ← write the cold message if no warm path exists
120
+ npm run decode ← understand the role before reaching out
121
+ npm run fit ← confirm this is worth your outreach effort first
122
+ ```
123
+
124
+ Apply all rules from `rules/writing-rules.md` to all messages.
@@ -0,0 +1,96 @@
1
+ # Salary Research Agent
2
+
3
+ ## What This Does
4
+
5
+ Researches current market compensation for a specific role and location.
6
+ Gives you a realistic range, a negotiation anchor, and talking points for
7
+ the comp conversation — before you get on a screening call.
8
+
9
+ ## Instructions for Claude Code
10
+
11
+ ### Step 1 — Load inputs
12
+
13
+ Read `inputs/job-description.md` for role title and company.
14
+ Read `inputs/my-resume.md` for years of experience and background context.
15
+
16
+ ### Step 2 — Extract role details
17
+
18
+ From the JD identify:
19
+ - Exact role title
20
+ - Seniority level (entry / mid / senior / director / VP)
21
+ - Location (remote or specific city)
22
+ - Industry
23
+ - Company size if mentioned
24
+
25
+ ### Step 3 — Research compensation
26
+
27
+ Use web search to find current salary data from:
28
+ - Glassdoor (search: "[role title] salary [city] site:glassdoor.com")
29
+ - LinkedIn Salary (search: "[role title] salary [city] site:linkedin.com/salary")
30
+ - Levels.fyi for tech roles (search: "[role title] [company] salary site:levels.fyi")
31
+ - Payscale (search: "[role title] salary [city] site:payscale.com")
32
+ - Indeed Salary (search: "[role title] salary [city] site:indeed.com")
33
+
34
+ Run at least 3 searches. Collect the ranges returned.
35
+
36
+ ### Step 4 — Calculate ranges
37
+
38
+ From all data collected, determine:
39
+ - Floor: 25th percentile (low end, likely entry-level or low-cost market)
40
+ - Midpoint: 50th percentile (market rate for this role/location)
41
+ - Ceiling: 75th percentile (experienced candidate or HCOL market)
42
+ - Stretch: 90th percentile (for negotiation anchor — never open here, use as ceiling)
43
+
44
+ For sales roles, also calculate:
45
+ - Base salary range
46
+ - OTE (On-Target Earnings) range
47
+ - Commission structure norms for this role type
48
+
49
+ ### Step 5 — Assess where the user lands
50
+
51
+ Based on their resume, assess where in the range they realistically sit:
52
+ - Years of experience in this role type
53
+ - Industry background alignment
54
+ - Geographic market (HCOL vs MCOL vs LCOL)
55
+ - Whether they're targeting a step up, lateral, or step down
56
+
57
+ ### Step 6 — Write negotiation strategy
58
+
59
+ Produce a short negotiation playbook:
60
+
61
+ OPENING NUMBER: [specific number — not a range]
62
+ Why: Opening with a range anchors to the bottom. Opening with a number anchors higher.
63
+
64
+ ACCEPTABLE RANGE: [floor] to [ceiling]
65
+
66
+ WALK-AWAY NUMBER: [the number below which this role doesn't make sense]
67
+
68
+ IF THEY COME IN BELOW YOUR FLOOR:
69
+ [2-3 sentences on how to respond — what to say, what to ask for instead]
70
+
71
+ IF THEY ASK "WHAT ARE YOU LOOKING FOR" BEFORE AN OFFER:
72
+ "I'm focused on finding the right fit first. I'm confident we can get to a
73
+ number that works for both sides once we get there." — then redirect.
74
+
75
+ NON-SALARY LEVERS:
76
+ List 5 things to negotiate if base salary is fixed:
77
+ signing bonus, equity/RSUs, remote flexibility, start date, PTO, title bump,
78
+ performance review timing, expense account, equipment budget.
79
+
80
+ ### Step 7 — Save output
81
+
82
+ Write to `outputs/salary-research.md`.
83
+
84
+ Tell the user:
85
+ > Market rate for [role] in [location]: [floor]-[ceiling] base, [OTE if applicable]
86
+ > Your anchor: [opening number]
87
+ > Full research saved to outputs/salary-research.md
88
+
89
+ ---
90
+
91
+ ## ✅ What to do next
92
+
93
+ ```
94
+ npm run decode ← decode the JD — red flags, what they really want
95
+ npm run ats ← check your resume clears the ATS screener
96
+ ```
@@ -0,0 +1,109 @@
1
+ # Send Email — Job Search Response Sender
2
+
3
+ ## What This Does
4
+
5
+ Takes a drafted response from the inbox scan and sends it via Gmail MCP.
6
+ Always shows you the draft before sending — never sends without confirmation.
7
+
8
+ ## Prerequisites
9
+
10
+ Gmail MCP connected in Claude.ai settings.
11
+
12
+ ## Instructions for Claude Code
13
+
14
+ ### Step 1 — Load drafted responses
15
+
16
+ Read `outputs/inbox-scan.md`. Find all DRAFTED RESPONSE sections.
17
+
18
+ If the file doesn't exist or has no drafts, tell the user:
19
+ > Run `npm run inbox` first to scan for emails and generate drafts.
20
+
21
+ ### Step 2 — Present options
22
+
23
+ List all available drafted responses:
24
+
25
+ ```
26
+ Available drafted responses:
27
+
28
+ 1. Re: [subject] → [recipient] ([company])
29
+ 2. Re: [subject] → [recipient] ([company])
30
+ ...
31
+
32
+ Which would you like to send? (enter number, or 'all' for all HIGH priority)
33
+ ```
34
+
35
+ Wait for the user's answer.
36
+
37
+ ### Step 3 — Show draft for approval
38
+
39
+ Show the complete draft:
40
+
41
+ ```
42
+ ─────────────────────────────────────────────────────
43
+ TO: [email address]
44
+ SUBJECT: Re: [original subject]
45
+ ─────────────────────────────────────────────────────
46
+ [draft body]
47
+ ─────────────────────────────────────────────────────
48
+
49
+ Send this? (yes / edit / skip)
50
+ ```
51
+
52
+ If they say **edit**: ask what to change, update the draft, show again.
53
+ If they say **skip**: move to next draft.
54
+ If they say **yes**: proceed to send.
55
+
56
+ ### Step 4 — Send via Gmail MCP
57
+
58
+ Use Gmail MCP to:
59
+ 1. Find the original thread by message ID or subject
60
+ 2. Create a draft reply to that thread
61
+ 3. Send the draft
62
+
63
+ Tell the user:
64
+ > Sent to [name] at [company]
65
+ > Subject: Re: [subject]
66
+ > Sent at: [timestamp]
67
+
68
+ ### Step 5 — Log the send
69
+
70
+ Append to `outputs/inbox-scan.md`:
71
+
72
+ ```
73
+ ─────────────────────────────────────────────────────
74
+ SENT: [timestamp]
75
+ To: [recipient]
76
+ Subject: Re: [subject]
77
+ ─────────────────────────────────────────────────────
78
+ ```
79
+
80
+ ### Step 6 — Next steps
81
+
82
+ After all sends:
83
+ > All responses sent.
84
+ >
85
+ > If any of these lead to an interview:
86
+ > npm run research ← company + interviewer brief
87
+ > npm run interview ← story bank + coached answers
88
+ > npm run schedule ← add to calendar
89
+
90
+ ## Running
91
+
92
+ ```bash
93
+ npm run send-email
94
+ ```
95
+
96
+ ## Tone
97
+
98
+ Do not change the tone or content of drafted responses without the user
99
+ explicitly asking for edits. The drafts were written by the inbox scanner
100
+ with the right tone already applied.
101
+
102
+ ## ✅ What to do next
103
+
104
+ ```
105
+ npm run research ← if an interview is scheduled, pull the company brief
106
+ npm run interview ← build story bank + coached answers
107
+ npm run schedule ← add the interview to your calendar
108
+ npm run mock ← practice before the real thing
109
+ ```
@@ -0,0 +1,127 @@
1
+ # Job Tracker Auto-Fill
2
+
3
+ ## What This Does
4
+
5
+ Reads all your outputs and automatically rebuilds your job tracker with
6
+ current data — so your pipeline is always up to date without manual copying.
7
+
8
+ The job tracker in `docs/templates/JOB-TRACKER.md` never stays current
9
+ because updating it manually is friction. This agent reads everything in
10
+ `outputs/` and reconstructs the tracker automatically.
11
+
12
+ ## Instructions for Claude Code
13
+
14
+ ### Step 1 — Load all available outputs
15
+
16
+ Read every file in `outputs/` that exists:
17
+ - `job-shortlist.md` — companies and roles from the job search
18
+ - `fit-score.md` — most recent fit score
19
+ - `reality-check.md` — target tier and competitive roles
20
+ - `company-research.md` — companies researched
21
+ - `referral-finder.md` — companies with active referral outreach
22
+ - `inbox-scan.md` — companies that have emailed you
23
+ - `follow-up.md` — companies in follow-up stage
24
+ - `interview-brief.md` — companies with scheduled interviews
25
+ - `interview-debrief.md` — companies post-interview
26
+ - `salary-research.md` — comp benchmarks
27
+ - `offer-comparison.md` — active offers
28
+ - `rejection-analysis.md` — patterns and insights
29
+
30
+ Read `docs/templates/JOB-TRACKER.md` for the template format.
31
+
32
+ ### Step 2 — Reconstruct the pipeline
33
+
34
+ Build a complete picture of where each company stands:
35
+
36
+ **Stages:**
37
+ 1. RESEARCHING — in job shortlist or company research, not yet applied
38
+ 2. APPLIED — application submitted, no response
39
+ 3. SCREENING — phone screen or recruiter conversation
40
+ 4. INTERVIEWING — one or more interview rounds
41
+ 5. FINAL ROUND — last stage before decision
42
+ 6. OFFER — offer received, negotiating or deciding
43
+ 7. CLOSED — rejected, declined, or accepted
44
+
45
+ For each company: infer stage from which output files mention it and
46
+ what stage they're described at.
47
+
48
+ ### Step 3 — Write the updated tracker
49
+
50
+ Format:
51
+
52
+ ```markdown
53
+ # Job Search Tracker
54
+ Last updated: [today's date]
55
+
56
+ ## Pipeline Summary
57
+ Total active: [n] | Applied: [n] | Screening: [n] | Interviewing: [n] | Offers: [n]
58
+ Callback rate: [n]% ([n] responses from [n] applications)
59
+
60
+ ─────────────────────────────────────────────────────
61
+
62
+ ## Active Pipeline
63
+
64
+ | Company | Role | Stage | Applied | Last Contact | Next Action | Notes |
65
+ |---|---|---|---|---|---|---|
66
+ [one row per company, populated from outputs]
67
+
68
+ ─────────────────────────────────────────────────────
69
+
70
+ ## Offers
71
+ [If any offers exist — full detail from salary research and comparison]
72
+
73
+ ─────────────────────────────────────────────────────
74
+
75
+ ## Closed
76
+ | Company | Role | Outcome | Date | Notes |
77
+ |---|---|---|---|---|
78
+ [rejections, declines, accepted offers]
79
+
80
+ ─────────────────────────────────────────────────────
81
+
82
+ ## Search Health
83
+ Target roles: [from reality check]
84
+ Strong callback sources: [from rejection analysis if available]
85
+ Market comp range: [from salary research if available]
86
+
87
+ ─────────────────────────────────────────────────────
88
+
89
+ ## Next Actions (this week)
90
+ [5-7 specific action items pulled from all outputs — follow-ups due,
91
+ interviews to prep for, references to brief, responses to send]
92
+ ```
93
+
94
+ ### Step 4 — Flag urgent items
95
+
96
+ At the top of the output, list anything time-sensitive:
97
+
98
+ ```
99
+ ⚠️ URGENT — needs action today or tomorrow:
100
+ - [anything with a deadline from deadline-manager output]
101
+ - [unanswered inbox alerts from inbox-scan]
102
+ - [follow-ups more than 5 days old]
103
+ ```
104
+
105
+ ### Step 5 — Save output
106
+
107
+ Write to `outputs/job-tracker.md` (not the template — the live version).
108
+
109
+ Also update `docs/templates/JOB-TRACKER.md` if the template format is stale.
110
+
111
+ Tell the user:
112
+ > Tracker updated. outputs/job-tracker.md
113
+ >
114
+ > [n] companies in pipeline. [n] items need action this week.
115
+ > [If urgent:] ⚠️ [n] items need attention today.
116
+
117
+ Run this weekly. The more outputs you have, the more accurate it gets.
118
+
119
+ ## ✅ What to do next
120
+
121
+ ```
122
+ npm run inbox ← scan for new recruiter emails first
123
+ npm run follow-up ← generate follow-up for anything stale
124
+ npm run deadline ← if any offers have deadlines
125
+ ```
126
+
127
+ Apply all rules from `rules/writing-rules.md`.
@@ -0,0 +1,26 @@
1
+ # Inputs
2
+
3
+ Paste your data here before running any tool.
4
+
5
+ **These files are tracked templates, not git-ignored.** Do not commit your filled-in
6
+ data. Keep your real resume, contact details, and other personal data in a local copy
7
+ outside version control (or add an `inputs/.gitignore` of your own) so it never lands in a PR.
8
+
9
+ ## Which file goes with which tool
10
+
11
+ | File | Fill in before running | What to put in it |
12
+ |---|---|---|
13
+ | `my-resume.md` | Most tools | Your full resume, plain text |
14
+ | `my-linkedin.md` | `npm run linkedin` | Your LinkedIn profile — headline, about, experience, skills |
15
+ | `job-description.md` | Most tools | The full job posting you're targeting |
16
+ | `job-search-criteria.md` | `npm run jobs` | Role titles, location, keywords, filters |
17
+ | `apply-linkedin-url.txt` | `npm run linkedin-scrape` | Your LinkedIn profile URL (advanced) |
18
+ | `search-outreach-target.md` | `npm run outreach` | Target company and contact details |
19
+ | `interview-context.md` | `npm run research` | Interviewer name, title, interview type |
20
+
21
+ ## Tips
22
+
23
+ - Plain text is fine for resume and LinkedIn — don't worry about formatting
24
+ - For `job-description.md`, paste the complete posting including requirements
25
+ - One job description at a time — overwrite it for each new application
26
+ - Your resume in `my-resume.md` is your master resume — the tools tailor it per role
@@ -0,0 +1,8 @@
1
+ # LinkedIn Profile URL
2
+
3
+ Paste your LinkedIn profile URL below — just the URL, nothing else.
4
+
5
+ Example: https://www.linkedin.com/in/yourname/
6
+
7
+ YOUR URL:
8
+
@@ -0,0 +1,24 @@
1
+ # Interview Context
2
+
3
+ <!-- Fill this in before running npm run research -->
4
+
5
+ ## Interviewer Name (if known)
6
+
7
+
8
+ ## Interviewer Title (if known)
9
+
10
+
11
+ ## Interview Type
12
+ <!-- screening / hiring manager / panel / final round -->
13
+
14
+
15
+ ## Interview Date and Time
16
+
17
+
18
+ ## Format
19
+ <!-- phone / video / in-person -->
20
+
21
+
22
+ ## Notes
23
+ <!-- Anything else relevant — who referred you, any prior conversations, etc. -->
24
+
@@ -0,0 +1,20 @@
1
+ # Target Job Description
2
+
3
+ <!-- Paste the full job description here -->
4
+ <!-- Include: role title, company, responsibilities, requirements, preferred qualifications -->
5
+ <!-- The more complete the JD, the better the tailoring -->
6
+
7
+ ## Role Title:
8
+ ## Company:
9
+ ## Location:
10
+
11
+ ## About the Role
12
+
13
+
14
+ ## Responsibilities
15
+
16
+
17
+ ## Requirements
18
+
19
+
20
+ ## Preferred Qualifications
@@ -0,0 +1,36 @@
1
+ # Job Search Criteria
2
+
3
+ <!-- Fill this in before running npm run jobs -->
4
+
5
+ ## Role Titles
6
+ <!-- List the job titles you want to search for, one per line -->
7
+ Senior Account Executive
8
+ Account Executive
9
+ Enterprise Sales Manager
10
+
11
+ ## Locations
12
+ <!-- City and state, or "Remote" -->
13
+ Charlotte, NC
14
+ Remote
15
+
16
+ ## Must-Have Keywords
17
+ <!-- Skills or terms that must appear in the posting -->
18
+
19
+
20
+ ## Exclude Keywords
21
+ <!-- Terms that disqualify a posting — e.g. "internship", "entry level" -->
22
+ internship
23
+ entry level
24
+ junior
25
+
26
+ ## Date Posted
27
+ <!-- How recent: 1, 3, 7, or 30 days -->
28
+ 7
29
+
30
+ ## Employment Type
31
+ <!-- full-time, part-time, contract, or any -->
32
+ full-time
33
+
34
+ ## Salary Minimum (optional)
35
+ <!-- Leave blank if not filtering by salary -->
36
+
@@ -0,0 +1,24 @@
1
+ # My LinkedIn Profile
2
+
3
+ <!-- Paste your full LinkedIn profile here -->
4
+ <!-- Include: Headline, About section, all Experience entries with bullets, Skills, Education -->
5
+ <!-- Remove contact info if you prefer — the audit doesn't need it -->
6
+
7
+ ## Headline
8
+
9
+
10
+ ## About
11
+
12
+
13
+ ## Experience
14
+
15
+ ### [Most Recent Role Title] | [Company] | [Start] - [End or Present]
16
+
17
+
18
+ ### [Previous Role Title] | [Company] | [Start] - [End]
19
+
20
+
21
+ ## Skills
22
+
23
+
24
+ ## Education
@@ -0,0 +1,28 @@
1
+ # My Resume
2
+
3
+ <!-- Paste your base resume here in plain text / markdown -->
4
+ <!-- This is your master resume — all experience, not tailored to any specific role -->
5
+ <!-- The resume-tailor agent handles the tailoring -->
6
+
7
+ ## [Your Name]
8
+ [City, State] | [email] | [LinkedIn URL]
9
+
10
+ ## Summary
11
+
12
+
13
+ ## Experience
14
+
15
+ ### [Most Recent Role Title] | [Company] | [Start] - [End or Present]
16
+ -
17
+ -
18
+ -
19
+
20
+ ### [Previous Role Title] | [Company] | [Start] - [End]
21
+ -
22
+ -
23
+ -
24
+
25
+ ## Skills
26
+
27
+
28
+ ## Education
@@ -0,0 +1,24 @@
1
+ # Cold Outreach Target
2
+
3
+ <!-- Fill this in before running npm run outreach -->
4
+
5
+ ## Target Company
6
+
7
+
8
+ ## Target Contact Name (if known)
9
+
10
+
11
+ ## Target Contact Title (if known)
12
+
13
+
14
+ ## Why This Company
15
+ <!-- What specifically draws you to this company — not generic, something real -->
16
+
17
+
18
+ ## Mutual Connection (if any)
19
+ <!-- Name and how you know them -->
20
+
21
+
22
+ ## Recent Company News You're Aware Of
23
+ <!-- Any recent developments you can reference -->
24
+
@@ -0,0 +1,37 @@
1
+ # Rules Engine
2
+
3
+ `writing-rules.md` is loaded into every agent prompt before generating output.
4
+
5
+ These rules exist because AI-generated job content has tells — patterns that
6
+ signal to recruiters the writing wasn't done by a person. The rules eliminate
7
+ those tells before output is generated.
8
+
9
+ ## How it works
10
+
11
+ Every agent file references these rules at the top of its prompt. The server
12
+ and Claude Code both inject the full contents of `writing-rules.md` into each
13
+ request automatically. You don't need to do anything — it's always on.
14
+
15
+ ## Contributing a rule
16
+
17
+ The most valuable rules come from real job searches — things you noticed
18
+ that got a response or killed one.
19
+
20
+ Format for new rules:
21
+ ```
22
+ - No "[phrase]" — [one line reason why it kills credibility]
23
+ ```
24
+
25
+ Submit via pull request to `rules/writing-rules.md` or open an issue.
26
+ See [docs/CONTRIBUTING.md](../docs/CONTRIBUTING.md).
27
+
28
+ ## What's in the rules
29
+
30
+ - Hard punctuation rules (no em dashes, no ellipses)
31
+ - Forbidden opening lines ("Hi", "I am writing to express...")
32
+ - Filler phrases to delete on sight (proven track record, results-driven, etc.)
33
+ - Bullet structure formula (action verb + what + result)
34
+ - Tone rules (specific beats vague, sound like a person)
35
+ - Email-specific rules
36
+ - Cover letter structure
37
+ - Resume bullet formula with examples