From career-navigator
Runs after artifact writes. Reconciles artifacts-index with files on disk in the user job search folder and prepares an analytics-ready artifact event summary.
npx claudepluginhub tmargolis/career-navigator --plugin career-navigatorThis skill uses the workspace's default tool permissions.
Run **after** new resumes or cover letters are saved to disk (e.g. from `tailor-resume` / `cover-letter`), and/or at the start of `daily-schedule` when PDF/DOCX artifacts exist in `{user_dir}`. There is no separate plugin hook file in this repository.
Guides Payload CMS config (payload.config.ts), collections, fields, hooks, access control, APIs. Debugs validation errors, security, relationships, queries, transactions, hook behavior.
Builds scalable data pipelines, modern data warehouses, and real-time streaming architectures using Spark, dbt, Airflow, Kafka, and cloud platforms like Snowflake, BigQuery.
Builds production Apache Airflow DAGs with best practices for operators, sensors, testing, and deployment. For data pipelines, workflow orchestration, and batch job scheduling.
Run after new resumes or cover letters are saved to disk (e.g. from tailor-resume / cover-letter), and/or at the start of daily-schedule when PDF/DOCX artifacts exist in {user_dir}. There is no separate plugin hook file in this repository.
Important behavior:
add-source for newly discovered resume/CV source files that are not yet ingested into ExperienceLibrary.mine-stories when newly ingested or changed source files can affect interview story coverage.add-source when auto-ingest can be performed.{user_dir} and validate index fileCheck {user_dir}/CareerNavigator/artifacts-index.json.
If missing, output:
Artifact sync skipped: run
/career-navigator:launchto initialize artifacts-index.
Scan {user_dir} for artifact files used by this plugin (PDF and DOCX).
Cross-check file system state against {user_dir}/CareerNavigator/artifacts-index.json:
For newly added records, set:
source to existing when inferred from user filesdate_created to today if unknowntype inferred from filename when possible (resume or cover_letter), otherwise leave neutral notesUpdate meta with:
updated_at: {today}From discovered PDF/DOCX files, identify likely source documents (resume/CV variants).
For each likely source doc not yet represented in ExperienceLibrary:
add-source automatically with that file path.After auto-ingest attempts, re-read:
{user_dir}/CareerNavigator/ExperienceLibrary.json{user_dir}/CareerNavigator/artifacts-index.jsonThen finalize reconciliation counts.
After source auto-ingest, check whether any newly discovered or changed files are story-bearing (resume/CV prose, journal-style notes, debrief notes, PKM exports).
When yes:
mine-stories in incremental mode automatically.{user_dir}/CareerNavigator/StoryCorpus.json meta.updated and source_index.When no:
Create an event summary payload (for current local logging and future connector handoff):
event_type: artifact_savedcreated_countremoved_countunchanged_countas_ofIf analytics connector is not configured, explicitly note:
Analytics connector handoff deferred (no connector configured in this phase).
ArtifactSaved processed.
Added: {n}
Removed: {n}
Unchanged: {n}
Auto-ingested source docs: {n}
Ingest failed: {n}
Story corpus refreshed: {yes/no} ({n_files} changed source file(s))
If Added or Removed > 0, append one short line:
Artifacts index updated to match files currently present in
{user_dir}.
ExperienceLibrary.json with brittle line-based string replacement; treat JSON as structured data and rewrite safely.