career-compass-mcp 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (60) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +340 -0
  3. package/build/bin/cli.d.ts +9 -0
  4. package/build/bin/cli.d.ts.map +1 -0
  5. package/build/bin/cli.js +134 -0
  6. package/build/bin/cli.js.map +1 -0
  7. package/build/src/index.d.ts +3 -0
  8. package/build/src/index.d.ts.map +1 -0
  9. package/build/src/index.js +18 -0
  10. package/build/src/index.js.map +1 -0
  11. package/build/src/prompts/index.d.ts +3 -0
  12. package/build/src/prompts/index.d.ts.map +1 -0
  13. package/build/src/prompts/index.js +122 -0
  14. package/build/src/prompts/index.js.map +1 -0
  15. package/build/src/resources/career-kb.d.ts +3 -0
  16. package/build/src/resources/career-kb.d.ts.map +1 -0
  17. package/build/src/resources/career-kb.js +143 -0
  18. package/build/src/resources/career-kb.js.map +1 -0
  19. package/build/src/schemas/career-schema.d.ts +361 -0
  20. package/build/src/schemas/career-schema.d.ts.map +1 -0
  21. package/build/src/schemas/career-schema.js +146 -0
  22. package/build/src/schemas/career-schema.js.map +1 -0
  23. package/build/src/server.d.ts +3 -0
  24. package/build/src/server.d.ts.map +1 -0
  25. package/build/src/server.js +30 -0
  26. package/build/src/server.js.map +1 -0
  27. package/build/src/storage/file-store.d.ts +22 -0
  28. package/build/src/storage/file-store.d.ts.map +1 -0
  29. package/build/src/storage/file-store.js +163 -0
  30. package/build/src/storage/file-store.js.map +1 -0
  31. package/build/src/tools/career-kb.d.ts +3 -0
  32. package/build/src/tools/career-kb.d.ts.map +1 -0
  33. package/build/src/tools/career-kb.js +148 -0
  34. package/build/src/tools/career-kb.js.map +1 -0
  35. package/build/src/tools/interview.d.ts +3 -0
  36. package/build/src/tools/interview.d.ts.map +1 -0
  37. package/build/src/tools/interview.js +194 -0
  38. package/build/src/tools/interview.js.map +1 -0
  39. package/build/src/tools/opportunity.d.ts +3 -0
  40. package/build/src/tools/opportunity.d.ts.map +1 -0
  41. package/build/src/tools/opportunity.js +137 -0
  42. package/build/src/tools/opportunity.js.map +1 -0
  43. package/build/src/tools/pipeline.d.ts +11 -0
  44. package/build/src/tools/pipeline.d.ts.map +1 -0
  45. package/build/src/tools/pipeline.js +295 -0
  46. package/build/src/tools/pipeline.js.map +1 -0
  47. package/build/src/tools/resume.d.ts +3 -0
  48. package/build/src/tools/resume.d.ts.map +1 -0
  49. package/build/src/tools/resume.js +222 -0
  50. package/build/src/tools/resume.js.map +1 -0
  51. package/build/src/types/tool-args.d.ts +52 -0
  52. package/build/src/types/tool-args.d.ts.map +1 -0
  53. package/build/src/types/tool-args.js +2 -0
  54. package/build/src/types/tool-args.js.map +1 -0
  55. package/data/example/career/experience.yaml +67 -0
  56. package/data/example/career/profile.yaml +31 -0
  57. package/data/example/career/skills.yaml +71 -0
  58. package/data/example/career/testimonials.yaml +26 -0
  59. package/data/example/pipeline/applications.yaml +312 -0
  60. package/package.json +82 -0
@@ -0,0 +1,122 @@
1
+ import { z } from "zod";
2
+ export function registerPrompts(server) {
3
+ server.registerPrompt("resume-tailor", {
4
+ title: "Resume Tailor",
5
+ description: "Generate a tailored, ATS-optimized resume for a specific job posting using your Career KB",
6
+ argsSchema: {
7
+ posting: z.string().describe("Full job posting text or URL"),
8
+ format: z.enum(["standard", "federal", "academic", "creative"]).optional().describe("Resume format style"),
9
+ pages: z.enum(["1", "2"]).optional().describe("Target page count"),
10
+ notes: z.string().optional().describe("Any special instructions or context"),
11
+ },
12
+ }, ({ posting, format = "standard", pages = "2", notes }) => ({
13
+ messages: [{
14
+ role: "user",
15
+ content: {
16
+ type: "text",
17
+ text: `You are an expert resume writer and career coach. Using the career data from my Career Knowledge Base (read career://full), create a tailored, ATS-optimized resume for the following job posting.
18
+
19
+ **Job Posting:**
20
+ ${posting}
21
+
22
+ **Format:** ${format}
23
+ **Target length:** ${pages} page(s)
24
+ ${notes ? `**Special instructions:** ${notes}` : ""}
25
+
26
+ **Requirements:**
27
+ - Match the language and keywords from the posting exactly where truthful
28
+ - Lead with a strong summary that bridges my experience to this specific role
29
+ - Prioritize achievements most relevant to this posting (use impact metrics)
30
+ - Use clean formatting: no tables, no columns, no graphics (ATS-safe)
31
+ - Industry-agnostic: adapt terminology to match the posting's domain
32
+ - Be truthful — only include things from my actual career history
33
+ - Surface transferable skills even if the industry differs
34
+ - Flag any gaps honestly but frame positively
35
+
36
+ Start by reading career://full, then produce the complete resume.`,
37
+ },
38
+ }],
39
+ }));
40
+ server.registerPrompt("interview-coach", {
41
+ title: "Interview Coach",
42
+ description: "Prepare for a specific interview with STAR stories, company research, and likely questions",
43
+ argsSchema: {
44
+ applicationId: z.string().optional().describe("Pipeline application ID for context"),
45
+ company: z.string().describe("Company name"),
46
+ role: z.string().describe("Role title"),
47
+ interviewType: z.enum(["phone_screen", "behavioral", "technical", "panel", "final", "negotiation"]).describe("Type of interview"),
48
+ interviewerInfo: z.string().optional().describe("Who you're meeting with (name, title, LinkedIn)"),
49
+ notes: z.string().optional().describe("Any additional context or concerns"),
50
+ },
51
+ }, ({ applicationId, company, role, interviewType, interviewerInfo, notes }) => ({
52
+ messages: [{
53
+ role: "user",
54
+ content: {
55
+ type: "text",
56
+ text: `You are an expert interview coach. Prepare me for my upcoming ${interviewType.replace("_", " ")} interview.
57
+
58
+ **Company:** ${company}
59
+ **Role:** ${role}
60
+ **Interview type:** ${interviewType}
61
+ ${interviewerInfo ? `**Interviewer:** ${interviewerInfo}` : ""}
62
+ ${applicationId ? `**Application ID:** ${applicationId} (read career://pipeline/${applicationId} for context)` : ""}
63
+ ${notes ? `**Additional context:** ${notes}` : ""}
64
+
65
+ Please read career://full for my background, then provide:
66
+
67
+ 1. **Opening pitch** — A 90-second "tell me about yourself" tailored to this role
68
+ 2. **STAR stories** — 5-7 stories from my experience matched to likely questions for this role/interview type
69
+ 3. **Likely questions** — Top 10 questions for this company/role, with suggested angles from my background
70
+ 4. **Company intelligence** — What I should know about their product, culture, and current priorities
71
+ 5. **Questions to ask them** — 5 thoughtful questions that show genuine interest and insight
72
+ 6. **Bridge topics** — Where my background unexpectedly connects to their world
73
+ 7. **Watch-outs** — Any gaps or concerns to prepare for, with reframe strategies
74
+
75
+ Be specific. Don't give generic advice — connect everything back to my actual career history.`,
76
+ },
77
+ }],
78
+ }));
79
+ server.registerPrompt("negotiation-coach", {
80
+ title: "Negotiation Coach",
81
+ description: "Evaluate an offer and build a negotiation strategy with roleplay support",
82
+ argsSchema: {
83
+ applicationId: z.string().optional().describe("Pipeline application ID"),
84
+ company: z.string().describe("Company name"),
85
+ role: z.string().describe("Role title"),
86
+ offerDetails: z.string().describe("Full offer details: base, bonus, equity, benefits, start date"),
87
+ marketData: z.string().optional().describe("Any salary research you have"),
88
+ priorities: z.string().optional().describe("What matters most to you: salary, equity, flexibility, etc."),
89
+ },
90
+ }, ({ applicationId, company, role, offerDetails, marketData, priorities }) => ({
91
+ messages: [{
92
+ role: "user",
93
+ content: {
94
+ type: "text",
95
+ text: `You are an expert compensation negotiation coach. Help me evaluate and negotiate this offer.
96
+
97
+ **Company:** ${company}
98
+ **Role:** ${role}
99
+ ${applicationId ? `**Application:** career://pipeline/${applicationId}` : ""}
100
+
101
+ **Offer details:**
102
+ ${offerDetails}
103
+
104
+ ${marketData ? `**My market research:** ${marketData}` : ""}
105
+ ${priorities ? `**My priorities:** ${priorities}` : ""}
106
+
107
+ Please provide:
108
+
109
+ 1. **Offer analysis** — Break down total compensation (base + bonus + equity + benefits), annualized
110
+ 2. **Market comparison** — How this compares to market for this role/level/location
111
+ 3. **Negotiation strategy** — What to push on, in what order, and why
112
+ 4. **Opening script** — Exact words to use when countering
113
+ 5. **Concession plan** — What to give up if they push back, and what to hold firm on
114
+ 6. **Alternative asks** — Non-salary items to request if base is fixed (signing bonus, equity cliff, remote days, title)
115
+ 7. **Roleplay** — Play the hiring manager responding to my counter, then coach me through it
116
+
117
+ Then ask me if I want to do a full negotiation roleplay.`,
118
+ },
119
+ }],
120
+ }));
121
+ }
122
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/prompts/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import type { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
2
+ export declare function registerCareerResources(server: McpServer): void;
3
+ //# sourceMappingURL=career-kb.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"career-kb.d.ts","sourceRoot":"","sources":["../../../src/resources/career-kb.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAIzE,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAsM/D"}
@@ -0,0 +1,143 @@
1
+ import { ResourceTemplate } from "@modelcontextprotocol/sdk/server/mcp.js";
2
+ import { loadCareerData, loadPipeline } from "../storage/file-store.js";
3
+ export function registerCareerResources(server) {
4
+ // ── Static career resources ──────────────────────────────────────────────────
5
+ server.registerResource("career-profile", "career://profile", {
6
+ title: "Career Profile",
7
+ description: "Professional profile: name, contact, summary, target roles, and preferences",
8
+ mimeType: "application/json",
9
+ }, async () => {
10
+ const data = await loadCareerData();
11
+ return {
12
+ contents: [{
13
+ uri: "career://profile",
14
+ mimeType: "application/json",
15
+ text: JSON.stringify(data?.profile ?? null, null, 2),
16
+ }],
17
+ };
18
+ });
19
+ server.registerResource("career-experience", "career://experience", {
20
+ title: "Work Experience",
21
+ description: "Full work history with roles, achievements, and impact metrics",
22
+ mimeType: "application/json",
23
+ }, async () => {
24
+ const data = await loadCareerData();
25
+ return {
26
+ contents: [{
27
+ uri: "career://experience",
28
+ mimeType: "application/json",
29
+ text: JSON.stringify(data?.experience ?? [], null, 2),
30
+ }],
31
+ };
32
+ });
33
+ server.registerResource("career-skills", "career://skills", {
34
+ title: "Skills Inventory",
35
+ description: "All skills with categories, proficiency levels, and recency",
36
+ mimeType: "application/json",
37
+ }, async () => {
38
+ const data = await loadCareerData();
39
+ return {
40
+ contents: [{
41
+ uri: "career://skills",
42
+ mimeType: "application/json",
43
+ text: JSON.stringify(data?.skills ?? [], null, 2),
44
+ }],
45
+ };
46
+ });
47
+ server.registerResource("career-projects", "career://projects", {
48
+ title: "Project Portfolio",
49
+ description: "Key projects with descriptions, technologies, and outcomes",
50
+ mimeType: "application/json",
51
+ }, async () => {
52
+ const data = await loadCareerData();
53
+ return {
54
+ contents: [{
55
+ uri: "career://projects",
56
+ mimeType: "application/json",
57
+ text: JSON.stringify(data?.projects ?? [], null, 2),
58
+ }],
59
+ };
60
+ });
61
+ server.registerResource("career-education", "career://education", {
62
+ title: "Education & Certifications",
63
+ description: "Degrees, certifications, and relevant coursework",
64
+ mimeType: "application/json",
65
+ }, async () => {
66
+ const data = await loadCareerData();
67
+ return {
68
+ contents: [{
69
+ uri: "career://education",
70
+ mimeType: "application/json",
71
+ text: JSON.stringify(data?.education ?? [], null, 2),
72
+ }],
73
+ };
74
+ });
75
+ server.registerResource("career-testimonials", "career://testimonials", {
76
+ title: "Testimonials & Awards",
77
+ description: "Quotes from managers/peers, awards, and recognition",
78
+ mimeType: "application/json",
79
+ }, async () => {
80
+ const data = await loadCareerData();
81
+ return {
82
+ contents: [{
83
+ uri: "career://testimonials",
84
+ mimeType: "application/json",
85
+ text: JSON.stringify(data?.testimonials ?? [], null, 2),
86
+ }],
87
+ };
88
+ });
89
+ server.registerResource("career-full", "career://full", {
90
+ title: "Full Career Knowledge Base",
91
+ description: "Complete SSOT: profile, experience, skills, projects, education, testimonials",
92
+ mimeType: "application/json",
93
+ }, async () => {
94
+ const data = await loadCareerData();
95
+ return {
96
+ contents: [{
97
+ uri: "career://full",
98
+ mimeType: "application/json",
99
+ text: JSON.stringify(data, null, 2),
100
+ }],
101
+ };
102
+ });
103
+ // ── Pipeline resources ───────────────────────────────────────────────────────
104
+ server.registerResource("pipeline-overview", "career://pipeline", {
105
+ title: "Application Pipeline",
106
+ description: "All job applications with status, contacts, interview rounds, and offers",
107
+ mimeType: "application/json",
108
+ }, async () => {
109
+ const pipeline = await loadPipeline();
110
+ const statusCounts = pipeline.applications.reduce((acc, app) => {
111
+ acc[app.status] = (acc[app.status] ?? 0) + 1;
112
+ return acc;
113
+ }, {});
114
+ return {
115
+ contents: [{
116
+ uri: "career://pipeline",
117
+ mimeType: "application/json",
118
+ text: JSON.stringify({
119
+ summary: { total: pipeline.applications.length, byStatus: statusCounts, lastUpdated: pipeline.lastUpdated },
120
+ applications: pipeline.applications,
121
+ }, null, 2),
122
+ }],
123
+ };
124
+ });
125
+ // ── Per-application resource ─────────────────────────────────────────────────
126
+ const appTemplate = new ResourceTemplate("career://pipeline/{id}", { list: undefined });
127
+ server.registerResource("pipeline-application", appTemplate, {
128
+ title: "Application Detail",
129
+ description: "Full detail for a specific job application by ID",
130
+ mimeType: "application/json",
131
+ }, async (uri, { id }) => {
132
+ const pipeline = await loadPipeline();
133
+ const app = pipeline.applications.find(a => a.id === id);
134
+ return {
135
+ contents: [{
136
+ uri: uri.href,
137
+ mimeType: "application/json",
138
+ text: JSON.stringify(app ?? { error: `Application ${id} not found` }, null, 2),
139
+ }],
140
+ };
141
+ });
142
+ }
143
+ //# sourceMappingURL=career-kb.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"career-kb.js","sourceRoot":"","sources":["../../../src/resources/career-kb.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,361 @@
1
+ import { z } from "zod";
2
+ export declare const ApplicationStatus: z.ZodEnum<{
3
+ discovered: "discovered";
4
+ applied: "applied";
5
+ screening: "screening";
6
+ interviewing: "interviewing";
7
+ offer: "offer";
8
+ negotiating: "negotiating";
9
+ accepted: "accepted";
10
+ rejected: "rejected";
11
+ withdrawn: "withdrawn";
12
+ ghosted: "ghosted";
13
+ }>;
14
+ export type ApplicationStatus = z.infer<typeof ApplicationStatus>;
15
+ export declare const Achievement: z.ZodObject<{
16
+ metric: z.ZodString;
17
+ context: z.ZodString;
18
+ impact: z.ZodString;
19
+ keywords: z.ZodDefault<z.ZodArray<z.ZodString>>;
20
+ }, z.core.$strip>;
21
+ export declare const Experience: z.ZodObject<{
22
+ role: z.ZodString;
23
+ company: z.ZodString;
24
+ industry: z.ZodOptional<z.ZodString>;
25
+ location: z.ZodOptional<z.ZodString>;
26
+ startDate: z.ZodString;
27
+ endDate: z.ZodString;
28
+ summary: z.ZodOptional<z.ZodString>;
29
+ achievements: z.ZodDefault<z.ZodArray<z.ZodObject<{
30
+ metric: z.ZodString;
31
+ context: z.ZodString;
32
+ impact: z.ZodString;
33
+ keywords: z.ZodDefault<z.ZodArray<z.ZodString>>;
34
+ }, z.core.$strip>>>;
35
+ tags: z.ZodDefault<z.ZodArray<z.ZodString>>;
36
+ }, z.core.$strip>;
37
+ export declare const Skill: z.ZodObject<{
38
+ name: z.ZodString;
39
+ category: z.ZodString;
40
+ proficiency: z.ZodOptional<z.ZodNumber>;
41
+ yearsUsed: z.ZodOptional<z.ZodNumber>;
42
+ lastUsed: z.ZodOptional<z.ZodString>;
43
+ }, z.core.$strip>;
44
+ export declare const Education: z.ZodObject<{
45
+ degree: z.ZodString;
46
+ institution: z.ZodString;
47
+ date: z.ZodString;
48
+ honors: z.ZodOptional<z.ZodString>;
49
+ relevantCoursework: z.ZodDefault<z.ZodArray<z.ZodString>>;
50
+ certifications: z.ZodDefault<z.ZodArray<z.ZodString>>;
51
+ }, z.core.$strip>;
52
+ export declare const Project: z.ZodObject<{
53
+ name: z.ZodString;
54
+ role: z.ZodString;
55
+ description: z.ZodString;
56
+ technologies: z.ZodDefault<z.ZodArray<z.ZodString>>;
57
+ metrics: z.ZodDefault<z.ZodArray<z.ZodString>>;
58
+ outcomes: z.ZodDefault<z.ZodArray<z.ZodString>>;
59
+ url: z.ZodOptional<z.ZodString>;
60
+ }, z.core.$strip>;
61
+ export declare const Testimonial: z.ZodObject<{
62
+ source: z.ZodString;
63
+ relationship: z.ZodString;
64
+ quote: z.ZodString;
65
+ date: z.ZodOptional<z.ZodString>;
66
+ context: z.ZodOptional<z.ZodString>;
67
+ }, z.core.$strip>;
68
+ export declare const Profile: z.ZodObject<{
69
+ name: z.ZodString;
70
+ email: z.ZodOptional<z.ZodString>;
71
+ phone: z.ZodOptional<z.ZodString>;
72
+ location: z.ZodOptional<z.ZodString>;
73
+ linkedIn: z.ZodOptional<z.ZodString>;
74
+ portfolio: z.ZodOptional<z.ZodString>;
75
+ summary: z.ZodString;
76
+ targetRoles: z.ZodDefault<z.ZodArray<z.ZodString>>;
77
+ targetIndustries: z.ZodDefault<z.ZodArray<z.ZodString>>;
78
+ targetCompanySize: z.ZodDefault<z.ZodArray<z.ZodString>>;
79
+ salaryMin: z.ZodOptional<z.ZodNumber>;
80
+ salaryMax: z.ZodOptional<z.ZodNumber>;
81
+ salaryCurrency: z.ZodDefault<z.ZodString>;
82
+ openToRemote: z.ZodDefault<z.ZodBoolean>;
83
+ openToRelocation: z.ZodDefault<z.ZodBoolean>;
84
+ noticePeriod: z.ZodOptional<z.ZodString>;
85
+ }, z.core.$strip>;
86
+ export declare const CareerData: z.ZodObject<{
87
+ profile: z.ZodObject<{
88
+ name: z.ZodString;
89
+ email: z.ZodOptional<z.ZodString>;
90
+ phone: z.ZodOptional<z.ZodString>;
91
+ location: z.ZodOptional<z.ZodString>;
92
+ linkedIn: z.ZodOptional<z.ZodString>;
93
+ portfolio: z.ZodOptional<z.ZodString>;
94
+ summary: z.ZodString;
95
+ targetRoles: z.ZodDefault<z.ZodArray<z.ZodString>>;
96
+ targetIndustries: z.ZodDefault<z.ZodArray<z.ZodString>>;
97
+ targetCompanySize: z.ZodDefault<z.ZodArray<z.ZodString>>;
98
+ salaryMin: z.ZodOptional<z.ZodNumber>;
99
+ salaryMax: z.ZodOptional<z.ZodNumber>;
100
+ salaryCurrency: z.ZodDefault<z.ZodString>;
101
+ openToRemote: z.ZodDefault<z.ZodBoolean>;
102
+ openToRelocation: z.ZodDefault<z.ZodBoolean>;
103
+ noticePeriod: z.ZodOptional<z.ZodString>;
104
+ }, z.core.$strip>;
105
+ experience: z.ZodDefault<z.ZodArray<z.ZodObject<{
106
+ role: z.ZodString;
107
+ company: z.ZodString;
108
+ industry: z.ZodOptional<z.ZodString>;
109
+ location: z.ZodOptional<z.ZodString>;
110
+ startDate: z.ZodString;
111
+ endDate: z.ZodString;
112
+ summary: z.ZodOptional<z.ZodString>;
113
+ achievements: z.ZodDefault<z.ZodArray<z.ZodObject<{
114
+ metric: z.ZodString;
115
+ context: z.ZodString;
116
+ impact: z.ZodString;
117
+ keywords: z.ZodDefault<z.ZodArray<z.ZodString>>;
118
+ }, z.core.$strip>>>;
119
+ tags: z.ZodDefault<z.ZodArray<z.ZodString>>;
120
+ }, z.core.$strip>>>;
121
+ skills: z.ZodDefault<z.ZodArray<z.ZodObject<{
122
+ name: z.ZodString;
123
+ category: z.ZodString;
124
+ proficiency: z.ZodOptional<z.ZodNumber>;
125
+ yearsUsed: z.ZodOptional<z.ZodNumber>;
126
+ lastUsed: z.ZodOptional<z.ZodString>;
127
+ }, z.core.$strip>>>;
128
+ education: z.ZodDefault<z.ZodArray<z.ZodObject<{
129
+ degree: z.ZodString;
130
+ institution: z.ZodString;
131
+ date: z.ZodString;
132
+ honors: z.ZodOptional<z.ZodString>;
133
+ relevantCoursework: z.ZodDefault<z.ZodArray<z.ZodString>>;
134
+ certifications: z.ZodDefault<z.ZodArray<z.ZodString>>;
135
+ }, z.core.$strip>>>;
136
+ projects: z.ZodDefault<z.ZodArray<z.ZodObject<{
137
+ name: z.ZodString;
138
+ role: z.ZodString;
139
+ description: z.ZodString;
140
+ technologies: z.ZodDefault<z.ZodArray<z.ZodString>>;
141
+ metrics: z.ZodDefault<z.ZodArray<z.ZodString>>;
142
+ outcomes: z.ZodDefault<z.ZodArray<z.ZodString>>;
143
+ url: z.ZodOptional<z.ZodString>;
144
+ }, z.core.$strip>>>;
145
+ testimonials: z.ZodDefault<z.ZodArray<z.ZodObject<{
146
+ source: z.ZodString;
147
+ relationship: z.ZodString;
148
+ quote: z.ZodString;
149
+ date: z.ZodOptional<z.ZodString>;
150
+ context: z.ZodOptional<z.ZodString>;
151
+ }, z.core.$strip>>>;
152
+ }, z.core.$strip>;
153
+ export declare const Contact: z.ZodObject<{
154
+ name: z.ZodString;
155
+ title: z.ZodOptional<z.ZodString>;
156
+ email: z.ZodOptional<z.ZodString>;
157
+ linkedIn: z.ZodOptional<z.ZodString>;
158
+ notes: z.ZodOptional<z.ZodString>;
159
+ }, z.core.$strip>;
160
+ export declare const InterviewRound: z.ZodObject<{
161
+ type: z.ZodEnum<{
162
+ phone_screen: "phone_screen";
163
+ behavioral: "behavioral";
164
+ technical: "technical";
165
+ panel: "panel";
166
+ final: "final";
167
+ offer_call: "offer_call";
168
+ other: "other";
169
+ }>;
170
+ date: z.ZodOptional<z.ZodString>;
171
+ interviewers: z.ZodDefault<z.ZodArray<z.ZodString>>;
172
+ notes: z.ZodOptional<z.ZodString>;
173
+ outcome: z.ZodOptional<z.ZodString>;
174
+ }, z.core.$strip>;
175
+ export declare const Offer: z.ZodObject<{
176
+ baseSalary: z.ZodOptional<z.ZodNumber>;
177
+ currency: z.ZodDefault<z.ZodString>;
178
+ bonus: z.ZodOptional<z.ZodNumber>;
179
+ equity: z.ZodOptional<z.ZodString>;
180
+ benefits: z.ZodDefault<z.ZodArray<z.ZodString>>;
181
+ startDate: z.ZodOptional<z.ZodString>;
182
+ expiresDate: z.ZodOptional<z.ZodString>;
183
+ notes: z.ZodOptional<z.ZodString>;
184
+ }, z.core.$strip>;
185
+ export declare const Application: z.ZodObject<{
186
+ id: z.ZodString;
187
+ company: z.ZodString;
188
+ role: z.ZodString;
189
+ department: z.ZodOptional<z.ZodString>;
190
+ industry: z.ZodOptional<z.ZodString>;
191
+ location: z.ZodOptional<z.ZodString>;
192
+ remote: z.ZodDefault<z.ZodEnum<{
193
+ unknown: "unknown";
194
+ remote: "remote";
195
+ hybrid: "hybrid";
196
+ onsite: "onsite";
197
+ }>>;
198
+ postingUrl: z.ZodOptional<z.ZodString>;
199
+ postingText: z.ZodOptional<z.ZodString>;
200
+ status: z.ZodEnum<{
201
+ discovered: "discovered";
202
+ applied: "applied";
203
+ screening: "screening";
204
+ interviewing: "interviewing";
205
+ offer: "offer";
206
+ negotiating: "negotiating";
207
+ accepted: "accepted";
208
+ rejected: "rejected";
209
+ withdrawn: "withdrawn";
210
+ ghosted: "ghosted";
211
+ }>;
212
+ dateDiscovered: z.ZodOptional<z.ZodString>;
213
+ dateApplied: z.ZodOptional<z.ZodString>;
214
+ dateUpdated: z.ZodString;
215
+ contacts: z.ZodDefault<z.ZodArray<z.ZodObject<{
216
+ name: z.ZodString;
217
+ title: z.ZodOptional<z.ZodString>;
218
+ email: z.ZodOptional<z.ZodString>;
219
+ linkedIn: z.ZodOptional<z.ZodString>;
220
+ notes: z.ZodOptional<z.ZodString>;
221
+ }, z.core.$strip>>>;
222
+ interviewRounds: z.ZodDefault<z.ZodArray<z.ZodObject<{
223
+ type: z.ZodEnum<{
224
+ phone_screen: "phone_screen";
225
+ behavioral: "behavioral";
226
+ technical: "technical";
227
+ panel: "panel";
228
+ final: "final";
229
+ offer_call: "offer_call";
230
+ other: "other";
231
+ }>;
232
+ date: z.ZodOptional<z.ZodString>;
233
+ interviewers: z.ZodDefault<z.ZodArray<z.ZodString>>;
234
+ notes: z.ZodOptional<z.ZodString>;
235
+ outcome: z.ZodOptional<z.ZodString>;
236
+ }, z.core.$strip>>>;
237
+ offer: z.ZodOptional<z.ZodObject<{
238
+ baseSalary: z.ZodOptional<z.ZodNumber>;
239
+ currency: z.ZodDefault<z.ZodString>;
240
+ bonus: z.ZodOptional<z.ZodNumber>;
241
+ equity: z.ZodOptional<z.ZodString>;
242
+ benefits: z.ZodDefault<z.ZodArray<z.ZodString>>;
243
+ startDate: z.ZodOptional<z.ZodString>;
244
+ expiresDate: z.ZodOptional<z.ZodString>;
245
+ notes: z.ZodOptional<z.ZodString>;
246
+ }, z.core.$strip>>;
247
+ salaryRange: z.ZodOptional<z.ZodObject<{
248
+ min: z.ZodOptional<z.ZodNumber>;
249
+ max: z.ZodOptional<z.ZodNumber>;
250
+ currency: z.ZodDefault<z.ZodString>;
251
+ }, z.core.$strip>>;
252
+ notes: z.ZodDefault<z.ZodArray<z.ZodString>>;
253
+ tailoredResumeVersion: z.ZodOptional<z.ZodString>;
254
+ coverLetterGenerated: z.ZodDefault<z.ZodBoolean>;
255
+ followUpDue: z.ZodOptional<z.ZodString>;
256
+ priority: z.ZodDefault<z.ZodEnum<{
257
+ high: "high";
258
+ medium: "medium";
259
+ low: "low";
260
+ }>>;
261
+ source: z.ZodOptional<z.ZodString>;
262
+ referral: z.ZodOptional<z.ZodString>;
263
+ excitement: z.ZodOptional<z.ZodNumber>;
264
+ }, z.core.$strip>;
265
+ export declare const Pipeline: z.ZodObject<{
266
+ applications: z.ZodDefault<z.ZodArray<z.ZodObject<{
267
+ id: z.ZodString;
268
+ company: z.ZodString;
269
+ role: z.ZodString;
270
+ department: z.ZodOptional<z.ZodString>;
271
+ industry: z.ZodOptional<z.ZodString>;
272
+ location: z.ZodOptional<z.ZodString>;
273
+ remote: z.ZodDefault<z.ZodEnum<{
274
+ unknown: "unknown";
275
+ remote: "remote";
276
+ hybrid: "hybrid";
277
+ onsite: "onsite";
278
+ }>>;
279
+ postingUrl: z.ZodOptional<z.ZodString>;
280
+ postingText: z.ZodOptional<z.ZodString>;
281
+ status: z.ZodEnum<{
282
+ discovered: "discovered";
283
+ applied: "applied";
284
+ screening: "screening";
285
+ interviewing: "interviewing";
286
+ offer: "offer";
287
+ negotiating: "negotiating";
288
+ accepted: "accepted";
289
+ rejected: "rejected";
290
+ withdrawn: "withdrawn";
291
+ ghosted: "ghosted";
292
+ }>;
293
+ dateDiscovered: z.ZodOptional<z.ZodString>;
294
+ dateApplied: z.ZodOptional<z.ZodString>;
295
+ dateUpdated: z.ZodString;
296
+ contacts: z.ZodDefault<z.ZodArray<z.ZodObject<{
297
+ name: z.ZodString;
298
+ title: z.ZodOptional<z.ZodString>;
299
+ email: z.ZodOptional<z.ZodString>;
300
+ linkedIn: z.ZodOptional<z.ZodString>;
301
+ notes: z.ZodOptional<z.ZodString>;
302
+ }, z.core.$strip>>>;
303
+ interviewRounds: z.ZodDefault<z.ZodArray<z.ZodObject<{
304
+ type: z.ZodEnum<{
305
+ phone_screen: "phone_screen";
306
+ behavioral: "behavioral";
307
+ technical: "technical";
308
+ panel: "panel";
309
+ final: "final";
310
+ offer_call: "offer_call";
311
+ other: "other";
312
+ }>;
313
+ date: z.ZodOptional<z.ZodString>;
314
+ interviewers: z.ZodDefault<z.ZodArray<z.ZodString>>;
315
+ notes: z.ZodOptional<z.ZodString>;
316
+ outcome: z.ZodOptional<z.ZodString>;
317
+ }, z.core.$strip>>>;
318
+ offer: z.ZodOptional<z.ZodObject<{
319
+ baseSalary: z.ZodOptional<z.ZodNumber>;
320
+ currency: z.ZodDefault<z.ZodString>;
321
+ bonus: z.ZodOptional<z.ZodNumber>;
322
+ equity: z.ZodOptional<z.ZodString>;
323
+ benefits: z.ZodDefault<z.ZodArray<z.ZodString>>;
324
+ startDate: z.ZodOptional<z.ZodString>;
325
+ expiresDate: z.ZodOptional<z.ZodString>;
326
+ notes: z.ZodOptional<z.ZodString>;
327
+ }, z.core.$strip>>;
328
+ salaryRange: z.ZodOptional<z.ZodObject<{
329
+ min: z.ZodOptional<z.ZodNumber>;
330
+ max: z.ZodOptional<z.ZodNumber>;
331
+ currency: z.ZodDefault<z.ZodString>;
332
+ }, z.core.$strip>>;
333
+ notes: z.ZodDefault<z.ZodArray<z.ZodString>>;
334
+ tailoredResumeVersion: z.ZodOptional<z.ZodString>;
335
+ coverLetterGenerated: z.ZodDefault<z.ZodBoolean>;
336
+ followUpDue: z.ZodOptional<z.ZodString>;
337
+ priority: z.ZodDefault<z.ZodEnum<{
338
+ high: "high";
339
+ medium: "medium";
340
+ low: "low";
341
+ }>>;
342
+ source: z.ZodOptional<z.ZodString>;
343
+ referral: z.ZodOptional<z.ZodString>;
344
+ excitement: z.ZodOptional<z.ZodNumber>;
345
+ }, z.core.$strip>>>;
346
+ lastUpdated: z.ZodString;
347
+ }, z.core.$strip>;
348
+ export type Profile = z.infer<typeof Profile>;
349
+ export type Experience = z.infer<typeof Experience>;
350
+ export type Skill = z.infer<typeof Skill>;
351
+ export type Education = z.infer<typeof Education>;
352
+ export type Project = z.infer<typeof Project>;
353
+ export type Testimonial = z.infer<typeof Testimonial>;
354
+ export type Achievement = z.infer<typeof Achievement>;
355
+ export type CareerData = z.infer<typeof CareerData>;
356
+ export type Application = z.infer<typeof Application>;
357
+ export type Pipeline = z.infer<typeof Pipeline>;
358
+ export type Contact = z.infer<typeof Contact>;
359
+ export type InterviewRound = z.infer<typeof InterviewRound>;
360
+ export type Offer = z.infer<typeof Offer>;
361
+ //# sourceMappingURL=career-schema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"career-schema.d.ts","sourceRoot":"","sources":["../../../src/schemas/career-schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,iBAAiB;;;;;;;;;;;EAW5B,CAAC;AACH,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAIlE,eAAO,MAAM,WAAW;;;;;iBAKtB,CAAC;AAEH,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;iBAUrB,CAAC;AAEH,eAAO,MAAM,KAAK;;;;;;iBAMhB,CAAC;AAEH,eAAO,MAAM,SAAS;;;;;;;iBAOpB,CAAC;AAEH,eAAO,MAAM,OAAO;;;;;;;;iBAQlB,CAAC;AAEH,eAAO,MAAM,WAAW;;;;;;iBAMtB,CAAC;AAEH,eAAO,MAAM,OAAO;;;;;;;;;;;;;;;;;iBAiBlB,CAAC;AAEH,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAOrB,CAAC;AAIH,eAAO,MAAM,OAAO;;;;;;iBAMlB,CAAC;AAEH,eAAO,MAAM,cAAc;;;;;;;;;;;;;;iBAMzB,CAAC;AAEH,eAAO,MAAM,KAAK;;;;;;;;;iBAShB,CAAC;AAEH,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBA0BtB,CAAC;AAEH,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAGnB,CAAC;AAIH,MAAM,MAAM,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,OAAO,CAAC,CAAC;AAC9C,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,UAAU,CAAC,CAAC;AACpD,MAAM,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,KAAK,CAAC,CAAC;AAC1C,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,SAAS,CAAC,CAAC;AAClD,MAAM,MAAM,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,OAAO,CAAC,CAAC;AAC9C,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,WAAW,CAAC,CAAC;AACtD,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,WAAW,CAAC,CAAC;AACtD,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,UAAU,CAAC,CAAC;AACpD,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,WAAW,CAAC,CAAC;AACtD,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,QAAQ,CAAC,CAAC;AAChD,MAAM,MAAM,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,OAAO,CAAC,CAAC;AAC9C,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AAC5D,MAAM,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,KAAK,CAAC,CAAC"}