feat: add proposal for applicant profile template

Create OpenSpec proposal to add profile.md template and framework structure under src/ directory.

- Add src/ directory for distributable framework files
- Create profile.md template with all required sections
- Add CLAUDE.md instructions for Claude Code integration
- Ensure framework can be copied and used independently

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
2025-11-02 10:09:20 +01:00
co-authored by Claude
parent e2c3603c86
commit 01ca895baa
3 changed files with 117 additions and 0 deletions
@@ -0,0 +1,25 @@
# Add Applicant Profile Template
## Why
The job application workflow requires applicant information (personal details, experience, skills, education) to generate CVs, cover letters, and emails. Currently, there's no structured way to store and access this information, forcing Claude Code to ask repeatedly or requiring manual input each time.
## What Changes
- Create `src/` directory to hold the distributable framework files (separate from this development project)
- Add `src/profile.md` template file for storing applicant's personal and professional information
- Create `src/CLAUDE.md` with instructions for Claude Code to read `profile.md` when helping with job applications
- Define a structured markdown format for the profile that covers all necessary sections (personal info, experience, education, skills, projects)
## Impact
- **Affected specs**: Creates new capability `applicant-profile`
- **Affected code**:
- New directory: `src/` (contains the distributable framework)
- New file: `src/profile.md` (template for users to fill out)
- New file: `src/CLAUDE.md` (framework instructions for Claude Code)
- **User benefit**:
- Clear separation between framework development and framework usage
- Users can copy `src/` folder to any location to start using the framework
- One-time profile setup, reusable for all applications
- **No breaking changes**: This is the first foundational piece of the framework
@@ -0,0 +1,68 @@
# Applicant Profile
## ADDED Requirements
### Requirement: Profile Storage
The system SHALL provide a markdown file (`src/profile.md`) in the distributable framework directory for storing applicant information.
#### Scenario: Profile file exists with template structure
- **WHEN** the framework is set up in `src/` directory
- **THEN** `src/profile.md` contains template sections for Personal Information, Professional Summary, Work Experience, Education, Skills, Projects, Certifications, and Languages
#### Scenario: Profile sections are clearly documented
- **WHEN** user opens `src/profile.md`
- **THEN** each section includes helpful comments explaining what information to include and formatting guidance
### Requirement: Profile Schema
The profile markdown SHALL include the following sections with structured information:
1. Personal Information (name, email, phone, location, LinkedIn, GitHub)
2. Professional Summary (2-3 sentence overview)
3. Work Experience (company, position, dates, responsibilities, achievements)
4. Education (institution, degree, field, dates, honors)
5. Skills (categorized: technical, languages, tools, soft skills)
6. Projects (name, description, technologies, link)
7. Certifications (name, issuer, date)
8. Languages (language, proficiency level)
#### Scenario: Work experience includes all necessary fields
- **WHEN** user adds a work experience entry
- **THEN** template provides fields for company, position, employment period, key responsibilities, and quantifiable achievements
#### Scenario: Skills are organized by category
- **WHEN** user lists their skills
- **THEN** template groups skills into categories (Technical Skills, Programming Languages, Tools & Technologies, Soft Skills)
### Requirement: Claude Code Integration
The `src/CLAUDE.md` file SHALL instruct Claude Code to automatically read `profile.md` when the user requests help with job applications.
#### Scenario: Claude Code loads profile for application tasks
- **WHEN** user asks Claude Code to help with a job application (CV, cover letter, or email) in a directory containing the framework
- **THEN** Claude Code reads `profile.md` to access applicant information without asking the user to provide it again
#### Scenario: Profile is used as source of truth
- **WHEN** generating application documents
- **THEN** Claude Code uses only information from `profile.md`, ensuring consistency across all applications and preventing hallucinations
### Requirement: Framework Distribution
The framework SHALL be contained in a `src/` directory separate from the development project files.
#### Scenario: Users can copy framework to use elsewhere
- **WHEN** user wants to use the job application framework
- **THEN** they can copy the entire `src/` directory to any location and start using it immediately
#### Scenario: Development and usage are separated
- **WHEN** working on the framework itself
- **THEN** changes are made in this repository, and `src/` contains only the distributable framework files
@@ -0,0 +1,24 @@
# Implementation Tasks
## 1. Create Framework Directory
- [ ] 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
## 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
## 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