# /expand - Competency Expansion from Documents and Online Presence
You are enriching the candidate profile by discovering competencies hidden in documents and public online presence. This command is additive only — it never modifies existing profile content, only extends it.
Follow these steps **exactly in order**. Do not skip steps.
---
## Step 0: Read Existing Profile Files
Read these two files in parallel before doing anything else. You must know what is already there so you do not propose duplicates.
- If the repository represents an independent technical project (not an empty stub or uncustomized fork), extract a project summary (problem domain, tech stack, and demonstrable technical results) for consideration under Independent Projects
3. Also retrieve the full repository list if available (to catch unpinned repos)
If no GitHub username or URL is found in the profile, skip this source and note it was skipped.
### 1f. Other URLs in Profile
Check `01-candidate-profile.md` for any other URLs (portfolio site, personal website, Kaggle, Google Scholar, ResearchGate, publication links). For each:
- Fetch the page
- Extract any tools, methods, datasets, awards, or skills mentioned
---
## Step 2: Web Enrichment
For each experience item discovered in Step 1, search the web to extract the competencies it implies. Apply both approaches below — do not choose one over the other.
### Approach A: Direct lookup (explicit tools and frameworks)
If the item names a specific tool, framework, library, method, or platform, search for it directly:
- Independent projects → append to the `## Independent Projects` section formatted as `- **[Project Name]**: [Description with stack and outcome] *(GitHub — repo-name)*`
- Technical skills (primary and secondary) → append to the Technical Skills section
- Domain knowledge → append to the Domain Knowledge or Technical Skills section (match the existing structure)
- Methods and practices → append appropriately
For each addition, add a brief source annotation in a comment or parenthetical: *(Coursera — Deep Learning Specialisation)*, *(GitHub — project-name)*, etc. This makes future `/expand` runs idempotent.
### Additions to `02-behavioral-profile.md`
- Soft/behavioral signals → append to the "Strongest Behavioral Traits" or "How I Work Best" section (match existing structure)
- Always label inferred behavioral additions: *[Inferred from reference letter — Name / review before relying on this]*
[List each source scanned and how many competencies it yielded]
### Sources skipped
[List any sources that were missing, empty, or yielded nothing new — with brief reason]
### Needs manual review
[Any items that were ambiguous, partially readable, or where web lookup returned no clear syllabus]
```
---
## Design Principles
- **Additive only.** This command never modifies existing profile content. It only appends.
- **Source-traceable.** Every addition records where it came from, so future runs are idempotent and the user can verify or remove individual items later.
- **Both approaches, always.** Web lookup and inference are applied together — not as alternatives. A named course gets its official syllabus AND a reasoned competency list.
- **User confirms before writing.** The full competency map is shown and confirmed before a single file is touched.
- **Behavioral signals are labeled.** Anything inferred from tone, language, or indirect signals is marked as inferred so it is reviewed critically.
- **GitHub is fully scanned.** All public repositories are checked, not just pinned ones — unpinned repos often contain significant competency signals.
- **Portfolio & projects grounded in code.** Independent projects added to the profile must reflect real projects found in public GitHub repositories — never fabricated project claims.