cue-ai 0.9.2 → 0.9.3

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 +148 -170
  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,117 @@
1
+ # Offer Comparison Tool
2
+
3
+ ## What This Does
4
+
5
+ Compares two or more job offers side by side — beyond just the numbers.
6
+ Total compensation, growth trajectory, risk profile, culture signals, and
7
+ a recommended decision with honest reasoning.
8
+
9
+ Most people compare offers on base salary alone and miss the full picture.
10
+
11
+ ## Instructions for Claude Code
12
+
13
+ ### Step 1 — Gather offer details
14
+
15
+ Ask the user to provide details for each offer. Collect all at once:
16
+
17
+ > For each offer provide:
18
+ > - Company name and role title
19
+ > - Base salary
20
+ > - Bonus structure (target % or fixed amount)
21
+ > - OTE if sales role
22
+ > - Equity (options or RSUs — amount and vesting schedule if known)
23
+ > - Signing bonus (if any)
24
+ > - Benefits (health, 401k match, PTO)
25
+ > - Location / remote policy
26
+ > - Start date flexibility
27
+ > - Stage of company (startup / growth / public / enterprise)
28
+ > - Why you're excited about it
29
+ > - What concerns you about it
30
+
31
+ ### Step 2 — Calculate total compensation
32
+
33
+ For each offer calculate:
34
+ - Year 1 total cash (base + signing bonus prorated + target bonus)
35
+ - Year 1 total comp (cash + equity year 1 value if determinable)
36
+ - Year 3 total cash (base assuming 5% annual raise + bonus)
37
+ - Year 3 total comp (cash + remaining equity)
38
+
39
+ Note assumptions made where data is missing.
40
+
41
+ ### Step 3 — Score each offer across dimensions
42
+
43
+ Score each offer 1-10 on:
44
+
45
+ **Compensation** — total comp vs market rate for this role/location
46
+ **Growth trajectory** — where does this role lead in 2-3 years?
47
+ **Stability** — how likely is this company/role to exist in 2 years?
48
+ **Culture fit** — based on what the user shared about each company
49
+ **Learning** — will this role build skills that compound?
50
+ **Flexibility** — remote, hours, autonomy
51
+ **Upside** — equity, commission, promotion velocity
52
+
53
+ ### Step 4 — The comparison
54
+
55
+ ```
56
+ ─────────────────────────────────────────────────────
57
+ OFFER COMPARISON
58
+ ─────────────────────────────────────────────────────
59
+
60
+ [OFFER A] [OFFER B]
61
+ Base $X $X
62
+ Target bonus $X $X
63
+ OTE / total cash Y1 $X $X
64
+ Equity Y1 value $X $X
65
+ Signing (prorated Y1) $X $X
66
+ TOTAL COMP YEAR 1 $X $X
67
+ TOTAL COMP YEAR 3 est. $X $X
68
+
69
+ Compensation score: X/10 X/10
70
+ Growth trajectory: X/10 X/10
71
+ Stability: X/10 X/10
72
+ Learning: X/10 X/10
73
+ Upside: X/10 X/10
74
+
75
+ OVERALL SCORE: X/10 X/10
76
+
77
+ ─────────────────────────────────────────────────────
78
+ ```
79
+
80
+ ### Step 5 — The honest recommendation
81
+
82
+ Give a direct recommendation — not "it depends on your priorities."
83
+
84
+ State which offer to take and why. Then explain:
85
+ - The one thing that makes Offer A better than Offer B
86
+ - The one thing that makes Offer B better than Offer A
87
+ - The scenario in which the other choice would be right
88
+ - What to negotiate on the recommended offer before accepting
89
+
90
+ ### Step 6 — What to negotiate before deciding
91
+
92
+ For the recommended offer, identify 2-3 things worth asking for before signing:
93
+ - What is likely moveable?
94
+ - What is the ask and how to make it?
95
+
96
+ ### Step 7 — The question to sleep on
97
+
98
+ End with one honest question the user should sit with before deciding:
99
+ Something they may be glossing over or rationalizing — a real concern worth
100
+ examining before committing.
101
+
102
+ ### Step 8 — Save output
103
+
104
+ Write to `outputs/offer-comparison.md`.
105
+
106
+ ## Tone
107
+
108
+ Direct. Give a recommendation. "It depends" is not useful when someone is
109
+ deciding between two offers with a deadline. Make the call with the information
110
+ available and explain the reasoning clearly.
111
+
112
+ ---
113
+
114
+ ## ✅ What to do next
115
+
116
+ Sit with the recommendation overnight before deciding.
117
+ The question at the end is the one worth answering honestly.
@@ -0,0 +1,144 @@
1
+ # Counter-Offer Builder
2
+
3
+ ## What This Does
4
+
5
+ Builds a written counter-proposal — the actual document or email you send
6
+ back when you want to negotiate an offer.
7
+
8
+ The negotiation sim (`npm run negotiate`) is the practice conversation.
9
+ This is the artifact. A written counter changes the dynamic — it forces
10
+ clarity on both sides, reduces the chance of miscommunication, and signals
11
+ you're serious and organized.
12
+
13
+ Most candidates negotiate verbally and leave things vague. A written counter
14
+ with rationale for each ask is both more professional and more effective.
15
+
16
+ ## Instructions for Claude Code
17
+
18
+ ### Step 1 — Load inputs
19
+
20
+ Read `inputs/my-resume.md`.
21
+ Read `outputs/salary-research.md` if it exists — use the comp data.
22
+ Read `rules/writing-rules.md`.
23
+
24
+ Ask the user:
25
+
26
+ ```
27
+ Tell me about the offer you received:
28
+
29
+ 1. Base salary offered
30
+ 2. Bonus / OTE (if applicable)
31
+ 3. Equity (options, RSUs — amount and vesting schedule if known)
32
+ 4. Signing bonus
33
+ 5. PTO and remote/hybrid policy
34
+ 6. Start date
35
+ 7. Any other notable terms
36
+
37
+ Then tell me:
38
+ 8. What's your target base?
39
+ 9. Is there anything non-salary that matters as much or more?
40
+ (start date, remote flexibility, title, equity, signing bonus)
41
+ 10. Do you have a competing offer or a current compensation anchor?
42
+ (having a number to reference makes every ask stronger)
43
+ ```
44
+
45
+ Wait for their answers.
46
+
47
+ ### Step 2 — Build the counter strategy
48
+
49
+ Before writing anything, assess:
50
+
51
+ **LEVERAGE CHECK**
52
+ - Do they have a competing offer? (strong leverage)
53
+ - Are they a rare skill set for this role? (strong leverage)
54
+ - Is the company in growth mode or tightening mode? (from company research if available)
55
+ - How long has the role been open? (longer = more flexible)
56
+ - Is this a replacement hire or new headcount? (new headcount = harder to flex)
57
+
58
+ **WHAT TO ASK FOR vs. WHAT TO LET GO**
59
+ Rank each potential ask:
60
+ - Base salary (always ask — the primary number)
61
+ - Signing bonus (easier to grant than base — companies love one-time costs)
62
+ - Equity (depends heavily on company stage)
63
+ - Remote flexibility (often non-negotiable but worth asking)
64
+ - Title (sometimes easy, often meaningful for future comp)
65
+ - Start date (usually flexible)
66
+ - PTO (harder to flex at most companies)
67
+
68
+ Recommend: ask for 2-3 things, not everything. Prioritize the ones most
69
+ likely to be granted AND most valuable to this person.
70
+
71
+ ### Step 3 — Write the counter
72
+
73
+ Format as a professional email:
74
+
75
+ ---
76
+
77
+ **SUBJECT:** Re: [Role Title] Offer — [First Name]
78
+
79
+ [2-sentence opener — acknowledge the offer genuinely without being effusive.
80
+ Something specific about the opportunity. Not "I'm so excited."]
81
+
82
+ I'd like to explore whether there's room to adjust a few terms before I sign.
83
+
84
+ **Base Salary**
85
+ The offer is $[X]. Based on [comp research / market data / current comp],
86
+ I'm targeting $[Y]. I believe this reflects [1 specific reason — your
87
+ experience level, the market for this skill set, or the scope of the role].
88
+
89
+ **[Second ask if applicable]**
90
+ [Same format — specific ask, specific rationale. One sentence.]
91
+
92
+ **[Third ask if applicable — only if high confidence it's grantable]**
93
+ [Same format.]
94
+
95
+ These are my priorities. I'm not looking to nickel-and-dime — I want
96
+ to get to yes. If the base is genuinely fixed, I'd like to discuss
97
+ [signing bonus / additional equity / start date flexibility] as an
98
+ alternative.
99
+
100
+ [1-sentence close — reaffirm interest, give a reasonable timeline.]
101
+
102
+ [Name]
103
+
104
+ ---
105
+
106
+ ### Step 4 — Write the backup
107
+
108
+ Write a second version for if they come back with a partial yes:
109
+
110
+ **IF THEY MEET YOU HALFWAY:**
111
+ [Exact language for accepting a partial counter gracefully]
112
+
113
+ **IF THEY SAY THE NUMBER IS FIXED:**
114
+ [Language for pivoting to signing bonus or equity]
115
+
116
+ **IF THEY RESCIND THE OFFER:**
117
+ [This is extremely rare but worth noting — when to hold firm anyway]
118
+
119
+ ### Step 5 — Anchoring language
120
+
121
+ Provide 3 specific phrases for the verbal conversation that follows
122
+ the written counter:
123
+ - One to open the negotiation call
124
+ - One to hold firm without creating friction
125
+ - One to close once you've reached agreement
126
+
127
+ ### Step 6 — Save output
128
+
129
+ Write to `outputs/counteroffer.md`.
130
+
131
+ Tell the user:
132
+ > Counter-offer ready. outputs/counteroffer.md
133
+ >
134
+ > Send the email. Then be quiet. The next person to speak loses.
135
+
136
+ ## ✅ What to do next
137
+
138
+ ```
139
+ npm run negotiate ← practice the conversation before the call
140
+ npm run compare ← if you have multiple offers
141
+ npm run salary ← if you need more comp data before sending
142
+ ```
143
+
144
+ Apply all rules from `rules/writing-rules.md`.
@@ -0,0 +1,148 @@
1
+ # Offer Deadline Manager
2
+
3
+ ## What This Does
4
+
5
+ Builds a playbook for the specific situation where you have an offer
6
+ expiring and you're waiting on another company.
7
+
8
+ This is one of the highest-stakes moments in a job search and most people
9
+ handle it badly — they either accept the first offer out of fear or blow
10
+ up the second opportunity by being too aggressive. This agent tells you
11
+ exactly what to say, when to say it, and what each company is actually
12
+ thinking.
13
+
14
+ ## Instructions for Claude Code
15
+
16
+ ### Step 1 — Load inputs
17
+
18
+ Read `inputs/my-resume.md`.
19
+ Read `outputs/salary-research.md` if it exists.
20
+ Read `rules/writing-rules.md`.
21
+
22
+ Ask the user:
23
+
24
+ ```
25
+ Tell me your situation:
26
+
27
+ 1. What is Offer A? (company, role, comp, deadline)
28
+ 2. What is Company B? (company, role, stage you're at — final round, offer pending, etc.)
29
+ 3. How long until Offer A expires?
30
+ 4. How far along is Company B? (days until decision, or unknown)
31
+ 5. Which do you actually prefer? (be honest — it changes the strategy)
32
+ 6. Have you told either company about the other?
33
+ ```
34
+
35
+ Wait for their full answer.
36
+
37
+ ### Step 2 — Assess the situation honestly
38
+
39
+ Before any recommendations, state clearly:
40
+
41
+ **THE REALITY**
42
+ - How much time pressure actually exists
43
+ - What each company is likely thinking right now
44
+ - What the realistic outcome is in each scenario
45
+ - Whether this is a real competition or perceived pressure
46
+
47
+ **YOUR LEVERAGE**
48
+ Rate it: Strong / Moderate / Weak — and explain why.
49
+ - Strong: Company B is actively interested, offer expected soon
50
+ - Moderate: Company B is moving but timeline uncertain
51
+ - Weak: Company B is early stage or you haven't heard back recently
52
+
53
+ ### Step 3 — Build the playbook
54
+
55
+ **MOVE 1 — Ask Company A for an extension**
56
+
57
+ When: Immediately, within 24 hours of knowing you need it.
58
+ How much to ask for: 5-7 business days is reasonable. 2 weeks is a stretch.
59
+ The framing: You are not stalling. You are being responsible.
60
+
61
+ Write the exact email:
62
+
63
+ ---
64
+ Subject: Re: [Role] Offer — Extension Request
65
+
66
+ [Opener that acknowledges the offer warmly without being over the top]
67
+
68
+ I'm genuinely excited about this opportunity and want to make a thoughtful
69
+ decision. I have a few final items I'm working through — [optional: briefly
70
+ name one legitimate item, e.g. outstanding questions from legal review,
71
+ relocation logistics] — and I'd appreciate [X] additional business days to
72
+ confirm.
73
+
74
+ I want to start this relationship on solid footing. Would that be possible?
75
+
76
+ [Name]
77
+ ---
78
+
79
+ **MOVE 2 — Accelerate Company B**
80
+
81
+ When: Same day you request the extension from A.
82
+ What to say: Be honest that you have an offer and a decision date.
83
+ What NOT to say: Don't name Company A. Don't exaggerate the timeline.
84
+
85
+ Write the exact message:
86
+
87
+ ---
88
+ [To: Company B recruiter or hiring manager]
89
+
90
+ I wanted to be transparent with you: I've received an offer from another
91
+ company with a decision deadline of [date]. [Role] at [Company B] is my
92
+ first choice, and I'd rather make this decision with full information
93
+ than under artificial time pressure.
94
+
95
+ Is there any way to expedite the timeline on your end, or can you give
96
+ me a sense of where things stand?
97
+
98
+ [Name]
99
+ ---
100
+
101
+ **MOVE 3 — If Company B can't move fast enough**
102
+
103
+ Decision framework:
104
+ - If Offer A is strong and Company B is uncertain: take A
105
+ - If Company B is your clear preference and timeline is close: ask A for one more extension
106
+ - If you're genuinely torn: use the compare tool
107
+
108
+ Write the decline email for whichever offer you don't take — keep the
109
+ door open.
110
+
111
+ **MOVE 4 — If Company A won't extend**
112
+
113
+ You have a hard choice. Map it:
114
+ - What happens if you accept A and Company B comes through later? (you'd have to renege — assess that risk)
115
+ - What happens if you decline A and Company B falls through? (you're back to searching)
116
+ - Is there a third path? (ask A if you can start earlier to demonstrate commitment)
117
+
118
+ ### Step 4 — Timeline map
119
+
120
+ Draw the exact timeline:
121
+
122
+ ```
123
+ TODAY OFFER A DEADLINE TARGET DECISION
124
+ |__________________|___________________|
125
+ ↑ ↑ ↑
126
+ Request extension If no extension: Full information
127
+ Accelerate B decide here decision
128
+ ```
129
+
130
+ ### Step 5 — Save output
131
+
132
+ Write to `outputs/deadline-manager.md`.
133
+
134
+ Tell the user:
135
+ > Playbook ready. outputs/deadline-manager.md
136
+ >
137
+ > Move 1 first — ask for the extension today.
138
+ > Move 2 the same day — don't wait to see if A grants it.
139
+
140
+ ## ✅ What to do next
141
+
142
+ ```
143
+ npm run counter ← if you're negotiating the offer terms too
144
+ npm run compare ← full side-by-side comparison of both offers
145
+ npm run negotiate ← practice the offer conversation
146
+ ```
147
+
148
+ Apply all rules from `rules/writing-rules.md`.
@@ -0,0 +1,126 @@
1
+ # Salary Negotiation Simulator
2
+
3
+ ## What This Does
4
+
5
+ Simulates a real offer negotiation conversation. Claude plays the hiring manager
6
+ or recruiter. You practice countering. It grades your moves and tells you where
7
+ you left money on the table.
8
+
9
+ Most people have never practiced this conversation before the real one. This fixes that.
10
+
11
+ ## Instructions for Claude Code
12
+
13
+ ### Step 1 — Load inputs
14
+
15
+ Read `inputs/job-description.md` for role and company context.
16
+ Read `inputs/my-resume.md` for background and experience level.
17
+ If `outputs/salary-research.md` exists, read it — use the ranges and anchor numbers from there.
18
+
19
+ ### Step 2 — Set the scene
20
+
21
+ Ask the user:
22
+ > What offer did you receive? Give me:
23
+ > - Base salary
24
+ > - OTE or bonus structure (if applicable)
25
+ > - Equity (if applicable)
26
+ > - Any other components (signing bonus, PTO, remote flexibility)
27
+ > - What number you actually want
28
+
29
+ Wait for their answer before proceeding.
30
+
31
+ ### Step 3 — Assess the offer
32
+
33
+ Silently evaluate:
34
+ - Is this offer at, above, or below market for this role?
35
+ - What is realistic to negotiate given the role level and company size?
36
+ - What is the most they would likely go to on base? On OTE? On signing bonus?
37
+ - What non-salary levers are available if base is fixed?
38
+
39
+ ### Step 4 — Run the simulation
40
+
41
+ Open with this exactly:
42
+
43
+ ```
44
+ ─────────────────────────────────────────────────────
45
+ NEGOTIATION SIMULATION
46
+ Role: [role] at [company]
47
+ Your offer: [what they told you]
48
+ Your target: [what they want]
49
+ ─────────────────────────────────────────────────────
50
+
51
+ I'm playing the recruiter calling to give you the offer.
52
+ Respond as you would in the real conversation.
53
+ I'll play it straight — not a pushover, not a villain.
54
+
55
+ Ready? Here's the call.
56
+ ─────────────────────────────────────────────────────
57
+
58
+ "Hey [name], I'm excited to extend you an offer for the [role] position.
59
+ We'd like to bring you on at [offer base] base with [OTE/bonus structure].
60
+ [Equity/signing if applicable]. What do you think?"
61
+ ```
62
+
63
+ ### Step 5 — Run the negotiation in real time
64
+
65
+ Play the recruiter authentically:
66
+ - If they accept immediately: tell them they left money on the table and replay
67
+ - If they counter reasonably: push back once the way a real recruiter would ("Let me see what I can do... the best I can get you is X")
68
+ - If they counter too high: push back harder ("That's outside what we budgeted for this role")
69
+ - If they ask for time: grant it ("Of course, when can I expect to hear back?")
70
+ - If they negotiate non-salary items: be flexible on some, firm on others
71
+
72
+ After each exchange, grade their move:
73
+
74
+ ```
75
+ MOVE GRADE: A / B / C / D
76
+ WHAT WORKED: [specific]
77
+ WHAT MISSED: [specific]
78
+ MONEY LEFT: [estimate of what they could still get]
79
+ ```
80
+
81
+ Continue until the negotiation resolves — either a deal is struck or it breaks down.
82
+
83
+ ### Step 6 — Debrief
84
+
85
+ After the simulation ends:
86
+
87
+ ```
88
+ ─────────────────────────────────────────────────────
89
+ NEGOTIATION DEBRIEF
90
+ ─────────────────────────────────────────────────────
91
+
92
+ FINAL OUTCOME: [what was agreed]
93
+ BEST POSSIBLE OUTCOME: [what was realistically achievable]
94
+ MONEY LEFT ON TABLE: [delta between outcome and best possible]
95
+
96
+ WHAT YOU DID WELL:
97
+ [2-3 specific moves that worked]
98
+
99
+ WHAT TO DO DIFFERENTLY:
100
+ [2-3 specific improvements]
101
+
102
+ THE ONE RULE FOR THE REAL CONVERSATION:
103
+ [Single most important tactical note for this specific offer]
104
+
105
+ ─────────────────────────────────────────────────────
106
+ Run again to practice a different approach.
107
+ ─────────────────────────────────────────────────────
108
+ ```
109
+
110
+ ## Tone
111
+
112
+ Play the recruiter straight. Real recruiters have budgets and constraints —
113
+ they are not trying to cheat the candidate, but they will not volunteer money
114
+ the candidate does not ask for. The goal is to make the simulation feel real
115
+ enough that the actual conversation feels like a repeat.
116
+
117
+ ---
118
+
119
+ ## ✅ What to do next
120
+
121
+ Run the simulation again with a different approach if you scored C or D.
122
+
123
+ When you're ready for the real conversation:
124
+ ```
125
+ npm run compare ← if you have multiple offers, compare side by side
126
+ ```
@@ -0,0 +1,99 @@
1
+ # Schedule Interview — Calendar Agent
2
+
3
+ ## What This Does
4
+
5
+ Creates a Google Calendar event for a scheduled interview with:
6
+ - Prep checklist in the description
7
+ - 1-hour reminder before the interview
8
+ - 24-hour post-interview reminder to send thank-you note
9
+ - 5-business-day follow-up reminder if no response
10
+
11
+ Requires Google Calendar MCP connected in Claude.ai settings.
12
+
13
+ ## Instructions for Claude Code
14
+
15
+ ### Step 1 — Load inputs
16
+
17
+ Read `inputs/job-description.md` for role and company.
18
+ If `outputs/interview-prep.md` exists, read it for prep context.
19
+
20
+ ### Step 2 — Get interview details from user
21
+
22
+ Ask the user:
23
+ > What date and time is the interview? (e.g. "Tuesday June 3rd at 2pm ET")
24
+ > Who are you interviewing with? (name and title if known)
25
+ > Is it phone, video, or in-person?
26
+ > Video link or dial-in number if applicable?
27
+
28
+ ### Step 3 — Create main interview event
29
+
30
+ Use Google Calendar MCP to create an event with:
31
+ - Title: "Interview — [Role] at [Company]"
32
+ - Date/time: as provided
33
+ - Duration: 60 minutes (default)
34
+ - Location/link: video link or phone number if provided
35
+ - Description:
36
+
37
+ ```
38
+ INTERVIEW PREP CHECKLIST
39
+
40
+ Before the interview:
41
+ ☐ Review outputs/interview-prep.md
42
+ ☐ Run the mock interview: npm run mock
43
+ ☐ Research [Company] — recent news, funding, products
44
+ ☐ Prepare 3 questions to ask the interviewer
45
+ ☐ Confirm the video link / dial-in 30 minutes before
46
+ ☐ Have your resume open in front of you
47
+
48
+ Key talking points from your prep:
49
+ [Pull the top 3 stories from outputs/interview-story-bank.md if it exists]
50
+
51
+ Interviewer: [name and title if provided]
52
+ ```
53
+
54
+ - Reminder: 60 minutes before
55
+
56
+ ### Step 4 — Create thank-you note reminder
57
+
58
+ Create a second calendar event:
59
+ - Title: "Send thank-you note — [Company] interview"
60
+ - Date/time: next day at 9am
61
+ - Description: "Run: npm run thankyou — Send within 24 hours of the interview"
62
+ - Reminder: at time of event
63
+
64
+ ### Step 5 — Create follow-up reminder
65
+
66
+ Create a third calendar event:
67
+ - Title: "Follow up on [Company] interview if no response"
68
+ - Date/time: 5 business days after the interview at 10am
69
+ - Description: "If you haven't heard back, send one polite follow-up email."
70
+ - Reminder: at time of event
71
+
72
+ ### Step 6 — Confirm to user
73
+
74
+ Tell the user:
75
+ > 3 calendar events created:
76
+ > - Interview: [date/time]
77
+ > - Thank-you reminder: [date] at 9am
78
+ > - Follow-up reminder: [date] at 10am
79
+ >
80
+ > Your prep guide is in outputs/interview-prep.md
81
+ > Run `npm run mock` before the interview.
82
+
83
+ ## Note on Google Calendar MCP
84
+
85
+ This agent requires the Google Calendar MCP to be connected in your Claude.ai
86
+ settings (Settings → Integrations → Google Calendar). The MCP must be enabled
87
+ for Claude Code to access it.
88
+
89
+ If not connected, Claude Code will prompt you to connect it.
90
+
91
+ ---
92
+
93
+ ## ✅ What to do next
94
+
95
+ ```
96
+ npm run research ← pull the company + interviewer brief
97
+ npm run interview ← build your prep guide
98
+ npm run mock ← practice before the real thing
99
+ ```