Developer Portfolio Skill
Kernrichtlinie
Verwende das hochgeladene LinkedIn-PDF/den Export oder den eingefügten Profiltext des Benutzers als Quelle der Wahrheit. Scrape LinkedIn nicht und umgehe keine LinkedIn-Authentifizierung. Wenn der Benutzer nur eine LinkedIn-URL angibt, fordere ihn auf, das Profil-PDF/den Export hochzuladen oder den Profiltext einzufügen.
Prüfe vor jedem GitHub-Schreibvorgang den gh auth status und teile dem Benutzer mit, ob gh auth login erforderlich ist. Bevorzuge einen überprüfbaren Entwurf vor dem Pushen, es sei denn, der Benutzer fordert ausdrücklich eine automatische Veröffentlichung an.
Löse Skript- und Referenzpfade relativ zu diesem Skill-Verzeichnis auf. Kopiere keine lokalen absoluten Dateisystempfade in generierte README-Dateien, Portfolio-Konfigurationen oder GitHub-Commits.
Arbeitsablauf
-
Eingaben sammeln
- LinkedIn-PDF/Export-Pfad oder eingefügter LinkedIn-Text.
- GitHub-Benutzername, oder leite ihn von
gh api user --jq .loginab, wenn authentifiziert. - Optionale Ziel-Reponamen. Standardwerte:
- Portfolio:
<github-benutzername>.github.io - Profil-README:
<github-benutzername>
- Portfolio:
- Optionale Portfolio-Template-Quelle. Standard:
https://github.com/yashrajnayak/developer-portfolio.
-
Profiltext extrahieren
- Für PDFs ausführen:
python scripts/extract_linkedin_pdf.py \ --input <linkedin.pdf> \ --out <workspace>/linkedin-profile.txt - Für eingefügten Text speichere ihn als
linkedin-profile.txt.
- Für PDFs ausführen:
-
Profildaten normalisieren
- Lies
references/profile-schema.md. - Konvertiere
linkedin-profile.txtinnormalized-profile.json. - Halte die Angaben originaltreu. Erfinde keine Arbeitgeber, Daten, Abschlüsse, Zertifizierungen oder Metriken.
- Wenn der GitHub-Benutzername bekannt ist, füge
github_usernamehinzu. - Wenn eine Portfolio-Basis-URL bekannt ist, füge
portfolio_urlhinzu.
- Lies
-
Portfolio-Konfiguration generieren
- Ausführen:
python scripts/write_portfolio_config.py \ --profile normalized-profile.json \ --out config.json \ --github-username <github-benutzername> \ --portfolio-url https://<github-benutzername>.github.io - Kopiere die generierte
config.jsonin ein geklontes/geforktesdeveloper-portfolio-Template-Repo. - Führe die Validierungs-/Build-Befehle des Template-Repos aus, wenn verfügbar:
npm run validate npm run build
- Ausführen:
-
Profil-README generieren
- Ausführen:
python scripts/write_profile_readme.py \ --profile normalized-profile.json \ --out README.md - Diese Ausgabe ist für das GitHub-Profil-Repo
<github-benutzername>/<github-benutzername>bestimmt.
- Ausführen:
-
Mit GitHub CLI veröffentlichen
- Lies
references/github-publish.md. - Überprüfe die Authentifizierung:
gh auth status gh api user --jq .login - Scanne vor dem Pushen generierte Portfolio-Dateien auf lokale Pfade. Wenn das Template-Repo
npm run validatehat, verwende es. - Committe absichtsvoll. Verwende kein Force-Push. Überschreibe keine bestehenden Benutzer-Repos, ohne die aktuellen Inhalte zu überprüfen.
- Lies
Erwartete Ausgabe
Zurückgeben:
- Verwendete Quelle (PDF/Text).
- Generierte Pfade:
normalized-profile.json, Portfolioconfig.jsonund ProfilREADME.md. - Ziel-GitHub-Repos.
- Ausgeführte Validierungsbefehle.
- Ob GitHub-Pushes abgeschlossen oder aufgrund fehlender Authentifizierung/Überprüfung blockiert wurden.
Referenzen
references/profile-schema.md: Normalisierter Profil-JSON-Vertrag und Zuordnungsregeln.references/github-publish.md: Sicherer Veröffentlichungsablauf mit der GitHub CLI.