diff --git a/openspec/changes/add-profile-template/tasks.md b/openspec/changes/add-profile-template/tasks.md index c16eaf8..dbb2021 100644 --- a/openspec/changes/add-profile-template/tasks.md +++ b/openspec/changes/add-profile-template/tasks.md @@ -2,23 +2,23 @@ ## 1. Create Framework Directory -- [ ] 1.1 Create `src/` directory to hold distributable framework files +- [x] 1.1 Create `src/` directory to hold distributable framework files ## 2. Create Profile Template -- [ ] 2.1 Create `src/profile.md` with all required sections -- [ ] 2.2 Add helpful comments and examples for each section -- [ ] 2.3 Include markdown formatting guidelines within the template +- [x] 2.1 Create `src/profile.md` with all required sections +- [x] 2.2 Add helpful comments and examples for each section +- [x] 2.3 Include markdown formatting guidelines within the template ## 3. Create Framework Claude Instructions -- [ ] 3.1 Create `src/CLAUDE.md` with profile reading instructions -- [ ] 3.2 Specify that profile should be read for any job application-related tasks -- [ ] 3.3 Add instruction to use profile as single source of truth for applicant data +- [x] 3.1 Create `src/CLAUDE.md` with profile reading instructions +- [x] 3.2 Specify that profile should be read for any job application-related tasks +- [x] 3.3 Add instruction to use profile as single source of truth for applicant data ## 4. Validation -- [ ] 4.1 Verify `src/profile.md` template is complete and well-documented -- [ ] 4.2 Verify `src/CLAUDE.md` contains clear instructions for Claude Code -- [ ] 4.3 Ensure all required profile sections are present and clearly explained -- [ ] 4.4 Test that the framework can be copied to another directory and works independently +- [x] 4.1 Verify `src/profile.md` template is complete and well-documented +- [x] 4.2 Verify `src/CLAUDE.md` contains clear instructions for Claude Code +- [x] 4.3 Ensure all required profile sections are present and clearly explained +- [x] 4.4 Test that the framework can be copied to another directory and works independently diff --git a/src/CLAUDE.md b/src/CLAUDE.md new file mode 100644 index 0000000..4efc41d --- /dev/null +++ b/src/CLAUDE.md @@ -0,0 +1,123 @@ +# Job Application Framework - Instructions for Claude Code + +This directory contains the Job Application Framework (Bewerbungszauberer), designed to help create tailored CVs, cover letters, and application emails using Claude Code. + +## Core Principle: Profile as Source of Truth + +**IMPORTANT**: When the user requests help with ANY job application task (CV, cover letter, email, or application advice), you MUST: + +1. **Always read `profile.md` first** - This file contains the applicant's verified personal and professional information +2. **Use ONLY information from `profile.md`** - Never fabricate, assume, or hallucinate details about the applicant +3. **Maintain consistency** - All generated documents must align with the information in `profile.md` + +## When to Read the Profile + +Read `profile.md` automatically when the user asks for help with: + +- Creating or tailoring a CV/resume +- Writing a cover letter +- Drafting an application email +- Customizing application documents for a specific job +- Reviewing or improving existing application materials +- Extracting relevant experience or skills for a position +- Advice on how to position themselves for a role + +## Job Application Workflow + +When helping with job applications, follow this workflow: + +### 1. Research & Context +- Read the job description provided by the user +- Extract key requirements, skills, and keywords +- Analyze the company culture from the job posting language +- Read `profile.md` to understand what the applicant brings + +### 2. Match & Strategy +- Identify which of the applicant's experiences (from `profile.md`) best match the job requirements +- Determine which skills and projects to emphasize +- Decide on the appropriate tone (formal, balanced, or casual) based on company culture + +### 3. Content Generation +- Generate CV/cover letter/email based on the strategy +- Emphasize relevant experience from `profile.md` +- Incorporate keywords from the job description naturally +- Maintain factual accuracy - use only verified information from `profile.md` + +### 4. Quality Assurance +- Verify all company names, dates, and facts are correct +- Ensure consistency between all documents (CV ↔ cover letter ↔ email) +- Check that tone matches the target company culture +- Confirm ATS optimization if applicable (simple formatting, keywords, standard sections) + +## Document Standards + +### CV/Resume +- Use information from relevant sections of `profile.md` +- Tailor the professional summary to the specific role +- Emphasize experiences and skills that match job requirements +- Keep formatting simple and ATS-friendly +- Use quantifiable achievements when available + +### Cover Letter +- Structure: Opening → Why this role → What you bring → Cultural fit → Closing +- Length: Aim for 1 page (3-4 paragraphs) +- Tone: Match company culture (formal/balanced/casual) +- Personalize: Reference specific aspects of the job/company +- Connect: Link applicant's experience to job requirements + +### Application Email +- Keep it short (3-4 sentences maximum) +- Subject line: Clear and professional +- Body: Brief introduction, reference to attached documents, expression of interest +- Professional signature using contact info from `profile.md` + +## Cultural Considerations + +This framework is designed with the German job market in mind: + +- More formal tone is often expected +- Detailed work history with exact dates is valued +- Certificates and credentials are highly regarded +- A professional photo on CV may be common (user's choice) + +Adjust recommendations based on the target market if the user specifies a different region. + +## Constraints + +**Data Privacy**: +- All information stays local - only API calls to Claude use the data +- Never suggest uploading sensitive personal data to third-party services +- Respect GDPR and data protection principles + +**Accuracy & Honesty**: +- NEVER fabricate experience, skills, or achievements +- If `profile.md` lacks information needed for a job application, ask the user to update `profile.md` first +- Be transparent about what can and cannot be emphasized from the applicant's background + +**Quality Standards**: +- All generated content is a DRAFT - user must review and approve +- Fact-check company names, contact persons, and details from job postings +- Maintain consistency across all documents for a single application + +## Example Usage + +**User**: "Help me apply for this software engineering position at TechCorp [paste job description]" + +**Claude Code should**: +1. Read `profile.md` to load applicant information +2. Analyze the job description for requirements and culture +3. Identify matching experiences and skills from the profile +4. Ask clarifying questions: "Would you like me to create a CV, cover letter, or both?" +5. Generate tailored documents using only information from `profile.md` +6. Ensure all documents are consistent and factually accurate + +## Updating the Profile + +If you notice missing or outdated information during application preparation: +- Inform the user which sections of `profile.md` need updates +- Ask them to update `profile.md` first before generating documents +- This ensures the profile remains the single source of truth + +--- + +**Remember**: The quality of output depends on the quality of `profile.md`. Encourage users to keep it complete, accurate, and up to date. diff --git a/src/profile.md b/src/profile.md new file mode 100644 index 0000000..83d8de6 --- /dev/null +++ b/src/profile.md @@ -0,0 +1,173 @@ +# Applicant Profile + + + +## Personal Information + + + +- **Full Name**: [Your full name] +- **Email**: [your.email@example.com] +- **Phone**: [+1 234 567 8900] +- **Location**: [City, Country] +- **LinkedIn**: [linkedin.com/in/yourprofile] +- **GitHub**: [github.com/yourusername] +- **Portfolio/Website**: [Optional: yourwebsite.com] + +## Professional Summary + + + +[Your professional summary here] + +## Work Experience + + + +### [Job Title] at [Company Name] +**Period**: [Month Year] - [Month Year / Present] +**Location**: [City, Country / Remote] + +**Key Responsibilities**: +- [Main responsibility or project 1] +- [Main responsibility or project 2] +- [Main responsibility or project 3] + +**Achievements**: +- [Quantifiable achievement, e.g., "Reduced API response time by 40%"] +- [Impact-driven result, e.g., "Led team of 4 developers to launch feature used by 10K+ users"] + +### [Previous Job Title] at [Previous Company] +**Period**: [Month Year] - [Month Year] +**Location**: [City, Country] + +**Key Responsibilities**: +- [Responsibility 1] +- [Responsibility 2] + +**Achievements**: +- [Achievement 1] +- [Achievement 2] + + + +## Education + + + +### [Degree] in [Field of Study] +**Institution**: [University/College Name] +**Period**: [Year] - [Year] +**Location**: [City, Country] + +**Honors/Awards**: [Dean's List, Scholarships, etc.] +**Relevant Coursework**: [Course 1, Course 2, Course 3] +**GPA**: [Optional: 3.8/4.0] + + + +## Skills + + + +### Technical Skills +- [Skill 1, e.g., "Web Development"] +- [Skill 2, e.g., "Database Design"] +- [Skill 3, e.g., "Cloud Architecture"] + +### Programming Languages +- [Language 1, e.g., "Python (Advanced)"] +- [Language 2, e.g., "JavaScript/TypeScript (Advanced)"] +- [Language 3, e.g., "Java (Intermediate)"] + +### Tools & Technologies +- [Tool category 1, e.g., "Frontend: React, Vue.js, Next.js"] +- [Tool category 2, e.g., "Backend: Node.js, Django, Express"] +- [Tool category 3, e.g., "DevOps: Docker, Kubernetes, AWS, GitHub Actions"] +- [Tool category 4, e.g., "Databases: PostgreSQL, MongoDB, Redis"] + +### Soft Skills +- [Skill 1, e.g., "Team Leadership"] +- [Skill 2, e.g., "Cross-functional Collaboration"] +- [Skill 3, e.g., "Technical Communication"] +- [Skill 4, e.g., "Problem Solving"] + +## Projects + + + +### [Project Name] +**Description**: [Brief description of what the project does and its purpose] +**Technologies**: [Tech stack used, e.g., "React, Node.js, PostgreSQL, AWS"] +**Link**: [github.com/yourusername/project or live-demo.com] +**Key Highlights**: +- [Feature or achievement 1] +- [Feature or achievement 2] + +### [Another Project Name] +**Description**: [Brief description] +**Technologies**: [Tech stack] +**Link**: [URL] +**Key Highlights**: +- [Highlight 1] +- [Highlight 2] + + + +## Certifications + + + +- **[Certification Name]** - [Issuing Organization], [Month Year] + - [Optional: Certification ID or verification link] +- **[Another Certification]** - [Issuing Organization], [Month Year] + + + +## Languages + + + +- **[Language 1]**: [Proficiency level, e.g., "Native"] +- **[Language 2]**: [Proficiency level, e.g., "Fluent (C1)"] +- **[Language 3]**: [Proficiency level, e.g., "Intermediate (B1)"] + +--- + +