Files
Bewerbungszauberer/openspec/changes/add-application-management/tasks.md
T
gurixandClaude f1ba0dd98d feat: implement application management system
Add structured workflow for managing job applications with /new-application and /populate-application commands. Users can now organize applications in dated folders, store job documents, and have AI analyze requirements to populate strategy documents. Includes bug fix for src/ path references and safe update documentation.

OpenSpec: add-application-management

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-02 19:04:49 +01:00

5.0 KiB

Implementation Tasks

1. Create Application Folder Structure

  • 1.1 Create src/applications/ directory structure
  • 1.2 Create src/applications/pending/ directory for applications not yet sent
  • 1.3 Add .gitkeep file to preserve directory structure in git

2. Design Application Template

  • 2.1 Design application.md template structure with sections:
    • Organization Information (name, website, contact person)
    • Job Information (title, level, department)
    • Job Description Summary (key points from posting)
    • Research Notes (company culture, values, recent news)
    • Match Strategy (which experiences/skills to emphasize)
    • Key Messages (main points to convey in application)
    • Tone of Voice (formal/balanced/casual assessment)
    • Document Checklist (CV needed? Cover letter? Application form?)
  • 2.2 Add helpful comments and instructions within template
  • 2.3 Include metadata section (date created, status, deadline if known)

3. Implement /new-application Command

  • 3.1 Create src/.claude/commands/new-application.md
  • 3.2 Implement folder name generation logic:
    • Get current date in YYYY-MM-DD format
    • Parse user input for organization name and job title
    • Sanitize names (remove/replace invalid filesystem characters)
    • Combine into format: YYYY-MM-DD-OrgName-JobTitle
  • 3.3 Implement folder creation logic:
    • Create src/applications/pending/[generated-name]/
    • Copy application.md template to new folder
    • Create input/ subfolder
  • 3.4 Add user guidance:
    • Confirm successful creation with folder path
    • Explain next steps (add files to input/, run /populate-application)
    • Provide examples of useful input files

4. Implement /populate-application Command

  • 4.1 Create src/.claude/commands/populate-application.md
  • 4.2 Implement current directory detection:
    • Check if running from inside an application folder
    • Verify application.md and input/ exist
    • Provide helpful error if not in correct location
  • 4.3 Implement input file discovery:
    • List all files in input/ folder
    • Filter by supported formats (PDF, TXT, MD, DOCX, EML)
    • Warn about unsupported files
  • 4.4 Implement document analysis:
    • Read each supported file
    • Extract key information (job requirements, company info, contact details)
    • Identify keywords and skills mentioned
    • Analyze tone and company culture from language
  • 4.5 Implement profile cross-reference:
    • Read src/profile.md
    • Match job requirements to applicant's experience
    • Identify which projects/skills/achievements to emphasize
    • Suggest relevant stories or examples from profile
  • 4.6 Implement application.md population:
    • Update each section with extracted/analyzed information
    • Preserve any existing manual entries
    • Mark auto-populated sections with timestamp
    • Leave sections empty if no relevant information found
  • 4.7 Implement interactive prompts:
    • Ask user for missing critical information
    • Confirm before overwriting existing content
    • Provide summary of changes made

5. Update Framework Instructions

  • 5.1 Update src/CLAUDE.md to add application management workflow section
  • 5.2 Document the workflow sequence:
    1. Validate profile (existing)
    2. Initialize new application (/new-application)
    3. Gather documents (user adds to input/)
    4. Populate application (/populate-application)
    5. Review and refine application.md manually if needed
    6. Generate documents (future: CV, cover letter, email)
  • 5.3 Add command reference for /new-application and /populate-application
  • 5.4 Add guidance on what files to put in input/ folder
  • 5.5 Explain how to work with application.md after population

6. Handle Edge Cases

  • 6.1 Handle duplicate folder names (append counter if exists)
  • 6.2 Handle very long organization/job names (truncate with ellipsis)
  • 6.3 Handle missing input folder during population
  • 6.4 Handle corrupted or unreadable input files
  • 6.5 Handle running commands from wrong directory
  • 6.6 Handle missing profile.md during population (graceful degradation)

7. Create Example Application (for testing)

  • 7.1 Create example application folder structure manually for testing
  • 7.2 Add sample job posting to input/ folder
  • 7.3 Test population command with sample data
  • 7.4 Document expected output in tasks or design doc

8. Validation & Documentation

  • 8.1 Verify /new-application creates correct folder structure
  • 8.2 Verify application.md template has all required sections
  • 8.3 Verify input/ folder is created
  • 8.4 Verify /populate-application reads files from input/
  • 8.5 Verify population extracts key information correctly
  • 8.6 Verify profile integration works (matches skills/experience)
  • 8.7 Verify edge cases are handled gracefully
  • 8.8 Test with real job posting to validate workflow
  • 8.9 Update CLAUDE.md instructions are clear and complete
  • 8.10 Validate with openspec validate add-application-management --strict