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,164 @@
1
+ # Your Interview Scorecard
2
+
3
+ ## What This Does
4
+
5
+ Builds your personal scorecard for evaluating a company — the specific
6
+ things that would make you say no to this role, before you get swept up
7
+ in the excitement of being wanted.
8
+
9
+ Candidates spend all their energy trying to impress. The companies that
10
+ are worth your time are also trying to impress you. This agent builds
11
+ the criteria you'll use to evaluate them, so when the offer comes you're
12
+ deciding with your head, not your relief.
13
+
14
+ Run this before the first interview. Use it to evaluate throughout the process.
15
+
16
+ ## Instructions for Claude Code
17
+
18
+ ### Step 1 — Load inputs
19
+
20
+ Read `inputs/my-resume.md`.
21
+ Read `inputs/job-description.md`.
22
+ Read `outputs/company-research.md` if it exists.
23
+ Read `outputs/salary-research.md` if it exists.
24
+ Read `rules/writing-rules.md`.
25
+
26
+ Ask the user:
27
+ ```
28
+ A few questions to build your scorecard:
29
+
30
+ 1. Why are you looking? (leaving something specific, or seeking something specific)
31
+ 2. What went wrong in your last role? (this is often what you need to avoid repeating)
32
+ 3. What's non-negotiable for you right now?
33
+ (comp floor, remote/hybrid, manager quality, growth path, culture, stability, industry)
34
+ 4. What have you compromised on before that you regret?
35
+ 5. What does "this was the right move" look like in 2 years?
36
+ ```
37
+
38
+ Wait for their answers.
39
+
40
+ ### Step 2 — Build the scorecard
41
+
42
+ Create a personal evaluation scorecard with 6-8 criteria specific to this person.
43
+
44
+ For each criterion:
45
+
46
+ **[CRITERION NAME]**
47
+ Why it matters to you: [from their answers — make it personal]
48
+ What good looks like: [specific, not vague]
49
+ What bad looks like: [specific signals to watch for]
50
+ How to verify it: [the question to ask, the person to ask it to, the signal to watch for]
51
+ Current signal from what I know: [based on JD and company research if available]
52
+ Weight: Critical / Important / Nice-to-have
53
+
54
+ ---
55
+
56
+ Common criteria to consider (adapt to their specific situation):
57
+
58
+ **Compensation**
59
+ Not just base — total comp, bonus structure, equity, benefits, trajectory.
60
+ Question: "Can you walk me through the comp structure and how it progresses?"
61
+
62
+ **Manager Quality**
63
+ Your direct manager determines 80% of your day-to-day experience.
64
+ Question: "How would you describe your management style? What do your direct reports say about working with you?"
65
+ Signal: Do they ask you questions? Do they talk about their team's success or their own?
66
+
67
+ **Growth Path**
68
+ Is there a real path from this role or is it a terminal position?
69
+ Question: "Where have people who held this role previously gone within the company?"
70
+ Signal: Can they name 2-3 people?
71
+
72
+ **Team Stability**
73
+ Constant churn destroys productivity and signals dysfunction.
74
+ Question: "How long has the current team been together? Has there been significant turnover recently?"
75
+ Signal: How they answer, not just what they say.
76
+
77
+ **Real Autonomy**
78
+ The difference between "you'll own this" in the JD and what it actually means.
79
+ Question: "Walk me through how a decision gets made in this role. When do I need approval?"
80
+ Signal: Specificity of their answer.
81
+
82
+ **Culture Honesty**
83
+ Every company says "great culture." What they mean varies.
84
+ Question: "What's something about working here that surprised you — good or bad?"
85
+ Signal: Are they willing to name something real?
86
+
87
+ **Financial Stability**
88
+ Is this company going to be here in 2 years?
89
+ From company research — funding runway, revenue signals, layoff history.
90
+
91
+ **Work-Life Sustainability**
92
+ Realistic expectations for hours, availability, urgency culture.
93
+ Question: "What does a typical week look like for someone in this role?"
94
+ Signal: "We work hard but we play hard" = red flag.
95
+
96
+ ### Step 3 — The go/no-go framework
97
+
98
+ Write a clear decision guide:
99
+
100
+ ```
101
+ YOUR GO / NO-GO FRAMEWORK
102
+
103
+ MUST HAVE (any of these missing = decline):
104
+ [List their critical criteria]
105
+
106
+ STRONG PREFERENCE (2+ missing = serious concern):
107
+ [List their important criteria]
108
+
109
+ NICE TO HAVE (factor in but not deciding):
110
+ [List their lower-weight criteria]
111
+
112
+ THE ONE QUESTION THAT DECIDES IT:
113
+ [Based on their specific situation — the single question they need answered]
114
+ ```
115
+
116
+ ### Step 4 — Evaluation tracker
117
+
118
+ Create a scorecard table to fill in after each round:
119
+
120
+ ```
121
+ EVALUATION TRACKER
122
+
123
+ Criterion | Weight | What I learned | Score (1-5) | Questions remaining
124
+ ─────────────────────────────────────────────────────────────────────────────────────
125
+ [criterion 1] | Critical | | |
126
+ [criterion 2] | Critical | | |
127
+ [criterion 3] | Important | | |
128
+ ...
129
+ ─────────────────────────────────────────────────────────────────────────────────────
130
+ OVERALL: | |
131
+ ```
132
+
133
+ ### Step 5 — The reality check note
134
+
135
+ End with this:
136
+
137
+ ```
138
+ A NOTE ON THE OFFER HIGH
139
+
140
+ When an offer comes — if it comes — you will feel relieved. That relief
141
+ will make everything look better than it is. That's normal. That's human.
142
+
143
+ Before you say yes, fill in the scorecard completely.
144
+ The criteria you set before you knew you had the offer
145
+ are more reliable than the judgment you'll have after.
146
+
147
+ If 2 of your Critical criteria are unfilled or concerning —
148
+ that's information. Take 24 hours before deciding.
149
+ ```
150
+
151
+ ### Step 6 — Save output
152
+
153
+ Write to `outputs/interview-scorecard.md`.
154
+
155
+ ## ✅ What to do next
156
+
157
+ ```
158
+ npm run panel-decode ← understand who you're evaluating and who's evaluating you
159
+ npm run questions ← build your question bank to fill in your scorecard
160
+ npm run debrief ← update your scorecard after each round
161
+ npm run compare ← compare this offer against others using your criteria
162
+ ```
163
+
164
+ Apply all rules from `rules/writing-rules.md`.
@@ -0,0 +1,149 @@
1
+ # Job Search Agent
2
+
3
+ ## What This Does
4
+
5
+ Searches for live job postings across Indeed, LinkedIn, Glassdoor, and other
6
+ platforms using JobSpy MCP. Scores each posting against your resume and outputs
7
+ a ranked shortlist with match scores and recommended next steps.
8
+
9
+ ## Prerequisites
10
+
11
+ JobSpy MCP server installed:
12
+ ```bash
13
+ pip install jobspy-mcp-server
14
+ ```
15
+ (Requires Python 3.10+.)
16
+
17
+ Or via Docker (recommended fallback — works on any Python version):
18
+ ```bash
19
+ docker run -p 9423:9423 borgius/jobspy-mcp-server
20
+ ```
21
+
22
+ ## Instructions for Claude Code
23
+
24
+ ### Step 1 — Load inputs
25
+
26
+ Read `inputs/my-resume.md`.
27
+ Read `inputs/job-search-criteria.md`. This contains the user's search preferences.
28
+ Read `rules/writing-rules.md`.
29
+
30
+ ### Step 2 — Start JobSpy MCP server
31
+
32
+ First check if a server is already running:
33
+ ```bash
34
+ curl -s http://localhost:9423/health && echo "SERVER ALREADY UP"
35
+ ```
36
+
37
+ If not running, try to start locally:
38
+ ```bash
39
+ python3 -m jobspy_mcp_server --port 9423 &
40
+ MCP_PID=$!
41
+ sleep 3
42
+ curl -s http://localhost:9423/health && echo "SERVER UP" || echo "SERVER DOWN"
43
+ ```
44
+
45
+ If the local server does not start, try Docker:
46
+ ```bash
47
+ docker run -d -p 9423:9423 --name jobspy-mcp borgius/jobspy-mcp-server
48
+ sleep 5
49
+ curl -s http://localhost:9423/health && echo "DOCKER SERVER UP" || echo "DOCKER SERVER DOWN"
50
+ ```
51
+
52
+ If neither is available, tell the user to install JobSpy MCP first (see Prerequisites)
53
+ and stop here.
54
+
55
+ ### Step 3 — Parse search criteria
56
+
57
+ From `inputs/job-search-criteria.md` extract:
58
+ - Role titles to search (may be multiple)
59
+ - Locations (city, state, or remote)
60
+ - Keywords to include
61
+ - Keywords to exclude
62
+ - Date posted preference (last 7 days default)
63
+ - Full-time vs contract preference
64
+
65
+ ### Step 4 — Execute searches
66
+
67
+ Use the JobSpy MCP server at `http://localhost:9423` to search for jobs.
68
+ Run one search per role title. Collect all results.
69
+
70
+ For each search, use these parameters:
71
+ - search_term: role title
72
+ - location: from criteria
73
+ - results_wanted: 20
74
+ - hours_old: 168 (7 days)
75
+ - site_name: ["indeed", "linkedin", "glassdoor"]
76
+
77
+ ### Step 5 — Score each posting against resume
78
+
79
+ For each job posting returned, score it 1-10 against the resume on:
80
+ - Title match (does the role title align with the user's background?)
81
+ - Keyword overlap (how many JD keywords appear in the resume?)
82
+ - Experience level match (seniority alignment)
83
+ - Industry match (does the company industry align with their background?)
84
+
85
+ Discard any postings scoring below 5.
86
+
87
+ ### Step 6 — Output ranked shortlist
88
+
89
+ Write `outputs/job-shortlist.md` with:
90
+
91
+ ```
92
+ JOB SEARCH RESULTS
93
+ Searched: [date]
94
+ Criteria: [role] in [location]
95
+ Total found: [n] | After scoring: [n]
96
+
97
+ ─────────────────────────────────────
98
+ RANK 1 — SCORE: 9/10
99
+ Role: [title]
100
+ Company: [company]
101
+ Location: [location]
102
+ Posted: [date]
103
+ Source: [indeed/linkedin/glassdoor]
104
+ URL: [link]
105
+
106
+ WHY IT SCORES HIGH:
107
+ - [specific reason from resume match]
108
+ - [specific reason]
109
+
110
+ GAPS TO PREPARE FOR:
111
+ - [requirement in JD not in resume]
112
+
113
+ RECOMMENDED ACTION: Apply now / Research first / Skip
114
+ ─────────────────────────────────────
115
+ [repeat for each posting, ranked by score]
116
+ ```
117
+
118
+ ### Step 7 — Stop MCP server
119
+ ```bash
120
+ kill $MCP_PID 2>/dev/null || pkill -f jobspy_mcp_server 2>/dev/null
121
+ docker stop jobspy-mcp 2>/dev/null && docker rm jobspy-mcp 2>/dev/null
122
+ ```
123
+
124
+ ### Step 8 — Prompt next steps
125
+
126
+ Tell the user:
127
+ > Found [n] matches. Top result: [role] at [company] — score [x]/10.
128
+ > Your shortlist is saved to outputs/job-shortlist.md
129
+ >
130
+ > To apply to any of these:
131
+ > 1. Copy the job URL into inputs/job-description.md
132
+ > 2. Run: npm run resume
133
+ > 3. Run: npm run cover-letter
134
+ > 4. Run: npm run ats
135
+
136
+ ## Running
137
+
138
+ ```bash
139
+ npm run jobs
140
+ ```
141
+
142
+ ---
143
+
144
+ ## ✅ What to do next
145
+
146
+ ```
147
+ npm run decode ← decode the top posting before applying
148
+ npm run salary ← research comp for the role before any screening call
149
+ ```
@@ -0,0 +1,194 @@
1
+ # Weekly Momentum Check
2
+
3
+ ## What This Does
4
+
5
+ Your weekly check-in. Measures what's actually working, flags what isn't,
6
+ and tells you honestly whether you're making progress — or burning out.
7
+
8
+ Job searching feels like failure by default because rejection is the
9
+ default response. This agent replaces that feeling with evidence. Your
10
+ callback rate, your funnel metrics, your patterns — measured against what's
11
+ actually normal so you know where you stand, not where anxiety says you stand.
12
+
13
+ Run this every Friday. It takes 10 minutes and changes how the weekend feels.
14
+
15
+ ## Instructions for Claude Code
16
+
17
+ ### Step 1 — Load inputs
18
+
19
+ Read `outputs/job-tracker.md` if it exists.
20
+ Read `outputs/rejection-analysis.md` if it exists.
21
+ Read `rules/writing-rules.md`.
22
+
23
+ Ask the user:
24
+ ```
25
+ Quick rundown of your week — don't overthink it, just tell me:
26
+
27
+ 1. Applications submitted this week (number + types: targeted / cold ATS / referral)
28
+ 2. Responses received (callbacks, rejections, anything)
29
+ 3. Interviews or conversations that happened
30
+ 4. Anything that moved forward (second rounds, final rounds, offers)
31
+ 5. How many hours did you spend on the search this week?
32
+ 6. Honest: how are you feeling right now? (1 word or a sentence — either is fine)
33
+ ```
34
+
35
+ Wait for their answer.
36
+
37
+ ### Step 2 — Calculate the real metrics
38
+
39
+ **Callback rate this week:**
40
+ Responses ÷ Applications submitted (this week)
41
+
42
+ **Cumulative callback rate (if tracker data available):**
43
+ Total responses ÷ Total applications
44
+
45
+ **Industry benchmarks:**
46
+ - Cold ATS applications: 2-8% callback rate is normal
47
+ - Targeted applications (tailored + researched): 10-20% is good
48
+ - Referral applications: 30-50% callback rate
49
+ - LinkedIn Easy Apply: 1-3% (if it's your primary method, this is why)
50
+
51
+ Compare their actual rate to benchmark. Be honest about what it means.
52
+
53
+ **Funnel health:**
54
+ - Applied → Response: [their rate] vs. benchmark
55
+ - Response → Interview: [if data available]
56
+ - Interview → Offer: [if data available]
57
+
58
+ ### Step 3 — The honest assessment
59
+
60
+ Write a plain, honest paragraph. Not cheerful. Not crushing. True.
61
+
62
+ If they're performing well:
63
+ Say so specifically. "Your targeted application rate is 15%. That's above
64
+ average. The referral you got for [company] converting to a screen means
65
+ the referral strategy is working. Keep doing that."
66
+
67
+ If they're struggling:
68
+ Name the specific problem. "Your cold ATS callback rate is 2%. That's
69
+ consistent with industry average for cold apps, which means the method
70
+ is the problem, not the resume. Shifting 50% of your effort to referrals
71
+ would likely double your callback rate."
72
+
73
+ If the data is too thin to say anything useful:
74
+ "You have 8 applications total. That's not enough data to find a pattern.
75
+ The goal is 15-20 targeted applications before drawing any conclusions
76
+ about what's working."
77
+
78
+ ### Step 4 — The week's wins
79
+
80
+ Write this section no matter what the metrics say.
81
+
82
+ Pull out specifically what went right this week — not vague encouragement,
83
+ evidence of real progress:
84
+
85
+ ```
86
+ THIS WEEK'S ACTUAL WINS
87
+
88
+ [List 2-5 specific things — they may feel small but they are real:]
89
+
90
+ - Got a callback from [company type] = your resume is landing with this audience
91
+ - Made it through a phone screen = you can get past the first filter
92
+ - Found a warm intro path = you have an application that won't go into a black hole
93
+ - Completed your mock interview = you're more prepared than you were Monday
94
+ - Sent a follow-up = most candidates don't do this
95
+ - Identified a pattern in your rejections = that's intelligence, not failure
96
+ - Applied to one fewer spray-and-pray role = that's strategy
97
+ ```
98
+
99
+ The goal is not to minimize hard things. It's to make real things visible
100
+ that anxiety makes invisible.
101
+
102
+ ### Step 5 — The burnout check
103
+
104
+ Based on their hours and how they said they're feeling:
105
+
106
+ **If they're overworking (8+ hours/day on the search):**
107
+ ```
108
+ YOU ARE DOING TOO MUCH
109
+
110
+ More applications does not mean more offers. The research is clear:
111
+ quality beats quantity by a significant margin. 10 targeted applications
112
+ outperform 100 cold ones.
113
+
114
+ Next week: cap your search at 4 hours/day. Use the rest for things that
115
+ restore you. You will not perform well in interviews when you're depleted.
116
+ ```
117
+
118
+ **If they sound burnt out:**
119
+ ```
120
+ THIS IS A REAL THING
121
+
122
+ 76% of job seekers experience significant stress. 45% report burnout symptoms.
123
+ You are not unusual. You are not weak. You are human doing a hard thing.
124
+
125
+ Two things that are true simultaneously:
126
+ 1. The search requires consistent effort
127
+ 2. You cannot sustain consistent effort without rest
128
+
129
+ This week: take one full day off from the search. No applications,
130
+ no LinkedIn, no email checking. You will come back sharper.
131
+ The roles will still be there.
132
+ ```
133
+
134
+ **If they're pacing well:**
135
+ ```
136
+ YOUR PACING IS SUSTAINABLE
137
+
138
+ You're putting in enough effort to make progress without burning out.
139
+ That's harder than it sounds. Keep the rhythm.
140
+ ```
141
+
142
+ ### Step 6 — Next week's focus
143
+
144
+ Write 3 specific actions for next week — not a long list, just 3:
145
+
146
+ ```
147
+ NEXT WEEK: THREE THINGS
148
+
149
+ 1. [Most important — based on what's working or what needs to change]
150
+ 2. [Second priority]
151
+ 3. [One thing to protect your energy or momentum]
152
+ ```
153
+
154
+ ### Step 7 — The closing note
155
+
156
+ Always end the momentum check with this (vary the wording, keep the message):
157
+
158
+ ```
159
+ ONE MORE THING
160
+
161
+ A job search is not a performance review of your worth.
162
+
163
+ The hiring process has structural barriers, random timing, and biases
164
+ that have nothing to do with your competence. Getting filtered by an
165
+ AI screener is not a verdict on your value. Getting ghosted by a
166
+ recruiter is not a measure of your potential. Getting rejected after
167
+ a final round is not proof that you're not good enough.
168
+
169
+ It is a process with noise in it. Your job is to navigate it with
170
+ strategy and patience, not to internalize every outcome as signal
171
+ about who you are.
172
+
173
+ You are making progress. It doesn't always feel like it.
174
+ Keep going.
175
+ ```
176
+
177
+ ### Step 8 — Save output
178
+
179
+ Write to `outputs/momentum-check.md`.
180
+ Append to the file — don't overwrite — so you build a weekly record.
181
+
182
+ Tell the user:
183
+ > Momentum check complete. Week of [date] logged.
184
+ > [1-line summary of their actual status]
185
+
186
+ ## ✅ What to do next
187
+
188
+ ```
189
+ npm run tracker ← update your pipeline with this week's activity
190
+ npm run rejection ← if callback rate is consistently below 5%
191
+ npm run referrals ← if most applications are cold ATS
192
+ ```
193
+
194
+ Apply all rules from `rules/writing-rules.md`.
@@ -0,0 +1,85 @@
1
+ # Recruiter Cold Outreach
2
+
3
+ ## What This Does
4
+
5
+ Writes a cold message to a recruiter or hiring manager at a company you want
6
+ to work at — even when there's no open role posted. Harder than a cover letter
7
+ because there's no job description to anchor to. Most people either never send
8
+ these or send generic ones that get ignored.
9
+
10
+ ## Instructions for Claude Code
11
+
12
+ ### Step 1 — Load inputs
13
+
14
+ Read `inputs/my-resume.md` for background and experience.
15
+ Read `inputs/search-outreach-target.md` for target company and contact details.
16
+ Read `rules/writing-rules.md`.
17
+
18
+ ### Step 2 — Research the target
19
+
20
+ Use web search to find:
21
+ - What the company does and who they sell to / serve
22
+ - Recent news, funding, launches, or expansions (last 90 days)
23
+ - The contact's LinkedIn title and background (if name provided)
24
+ - Any job postings at the company that signal what teams are growing
25
+ (even if not the exact role — hiring in sales means the sales team is growing)
26
+
27
+ ### Step 3 — Find the angle
28
+
29
+ The angle is the single most specific reason this person should respond.
30
+ It must be one of:
31
+ - A mutual connection (strongest — always lead with this if it exists)
32
+ - A specific recent company event that connects to the candidate's background
33
+ - A specific problem the company likely has that the candidate has solved before
34
+ - A genuine specific reason for wanting this company over others
35
+
36
+ Generic angles ("I admire your company's mission") are not angles. They are
37
+ the reason cold messages get deleted.
38
+
39
+ ### Step 4 — Write three versions
40
+
41
+ **Version 1 — LinkedIn message (300 characters max)**
42
+ LinkedIn has a character limit. This version is brutally short.
43
+ One sentence on who you are, one sentence on why you're reaching out, one ask.
44
+ No filler. No "I hope this message finds you well."
45
+
46
+ **Version 2 — Email (under 100 words)**
47
+ Slightly more room but still disciplined.
48
+ - Line 1: The angle — something specific, not generic
49
+ - Line 2-3: Who you are in one or two sentences with one number
50
+ - Line 4: The ask — specific and low-friction ("15 minutes" not "a meeting")
51
+ - No subject line clichés: not "Exploring Opportunities" not "Quick Question"
52
+ Subject line should be specific: "Ex-HealthStream AE — interested in [Company]'s expansion into Southeast"
53
+
54
+ **Version 3 — Referral message (if a mutual connection exists)**
55
+ Shorter and warmer. Reference the mutual connection in line one.
56
+ Ask the mutual to forward or make an intro — not the target directly.
57
+
58
+ ### Step 5 — What not to do
59
+
60
+ Flag any of the following if they appear in the drafts and rewrite:
61
+ - "I came across your profile and was impressed..."
62
+ - "I would love to connect..."
63
+ - "I am passionate about..."
64
+ - "I believe I would be a great fit..."
65
+ - Attaching a resume in a cold message (never do this — ask if they want it)
66
+ - Asking for a job in a cold message (ask for a conversation, not a job)
67
+
68
+ ### Step 6 — Save output
69
+
70
+ Write all three versions to `outputs/cold-outreach.md` with context on when
71
+ to use each.
72
+
73
+ ## Tone
74
+
75
+ The best cold messages read like they were written by a confident person who
76
+ did their homework — not a desperate job seeker. The goal is curiosity, not sympathy.
77
+
78
+ ---
79
+
80
+ ## ✅ What to do next
81
+
82
+ Send the message. Then:
83
+ ```
84
+ npm run research ← when they respond and book a call, prep the company brief
85
+ ```