← Career Command CenterCONTENT HISTORYWHAT CHANGED · RULE-BASED ANALYSIS
Update to Career Command Center
Snapshot Sep 30, 2026 · 23:13 UTC · version 1.3.0+codex.20260715213050
Collection source: not recorded for this historical snapshot.
First saved snapshot
No earlier snapshot is available to establish a change.
Compare saved observations
Download comparison JSONFull technical diff · 0 changed fields
Full snapshot data
{
"name": "career-command-center",
"description": "Install, set up, open, diagnose, or operate Career Command Center; manage its job and PhD search automation; audit career evidence; build role-family master CVs; tailor application packages; or sync app search and schedule settings with Codex. Use when the user mentions Career Command Center, targeted career search, the app's setup wizard, its application queue, or its recurring automation.",
"included_files": [],
"skill_md_contents": "---\nname: career-command-center\ndescription: Install, set up, open, diagnose, or operate Career Command Center; manage its job and PhD search automation; audit career evidence; build role-family master CVs; tailor application packages; or sync app search and schedule settings with Codex. Use when the user mentions Career Command Center, targeted career search, the app's setup wizard, its application queue, or its recurring automation.\n---\n\n# Career Command Center\n\nUse the bundled app for user input and lifecycle management. Use Codex for evidence auditing, web research, document generation, quality review, and scheduled runs.\n\n`PLUGIN_ROOT` is the plugin directory containing this skill. Scripts live in `PLUGIN_ROOT/scripts`; references live in `PLUGIN_ROOT/references`.\n\n## First Setup\n\n1. Choose a workspace. Prefer the current Codex project when the user wants automation in that project; otherwise use `~/Documents/Career Command Center`.\n2. Run:\n\n```bash\npython3 PLUGIN_ROOT/scripts/bootstrap_workspace.py WORKSPACE\npython3 PLUGIN_ROOT/scripts/install_app.py --workspace WORKSPACE\n```\n\n3. Tell the user the app has opened and ask them to complete every wizard step. New setup is deliberately neutral: no role family, country, opportunity type, seniority, CV language, photo policy, or recurring schedule should be assumed. Do not register an automation before `onboarding_completed` is true.\n4. When the user returns with `Finish Career Command Center setup`, run `doctor.py WORKSPACE` and read:\n - `Config/command_center_config.json`\n - `Evidence_Bank/intake_answers.md`\n - `references/CV_GENERATION_STANDARD.md`\n - `references/PERSONALIZED_QUESTION_STANDARD.md`\n - `references/WORKSPACE_CONTRACT.md`\n5. If evidence blocks and approved masters are missing, begin the evidence foundation before scheduling:\n - Inventory and extract every CV, transcript, certificate, recommendation, report, and project file.\n - Write the verified portion of `Evidence_Bank/Verified_Evidence_Ledger.md` and structured `approved_evidence.json`, keeping unresolved claims out of approved evidence.\n - Identify only unresolved, high-impact gaps that satisfy the personalized-question standard. Do not repeat generic onboarding questions or ask for facts already stated clearly in a source.\n - Create a temporary generation payload and run `question_cli.py --workspace WORKSPACE generate --input PAYLOAD`. Every question must cite the source path, locator, and ambiguity that triggered it.\n - Run `question_cli.py --workspace WORKSPACE summary`.\n - Treat `audit_status: needs_refresh` exactly like a new evidence pass. Re-audit the newly imported or changed material and run question generation even when the result is an empty question list.\n6. If the summary reports `needs_user_answer` greater than zero, tell the user that personalized questions are ready in the app's **Questions** workspace. Do not dump the same questionnaire into chat, build final master CVs, or activate automation yet. The app's **Review in Codex** action will bring the user back after responses are saved.\n7. When the user asks to review saved evidence answers:\n - Read all `answered` and `unable_to_verify` questions and reopen every cited source.\n - Update the verified evidence ledger and `approved_evidence.json` only where the response and source support the claim. Record `unable_to_verify` as a boundary or exclusion.\n - Create a review payload and run `question_cli.py --workspace WORKSPACE review --input REVIEW_PAYLOAD` with a concise decision note and resulting evidence IDs for every reviewed item.\n - Generate a new cited question only when the response creates a material unresolved ambiguity. Resolve the original first; never silently rewrite an answered question.\n - Run the summary again. If questions remain open or answers await review, return the user to the Questions workspace and stop before master-CV generation.\n8. Once no questions need an answer or Codex review, complete the evidence foundation:\n - If `inferRoleFamilies` is true, infer coherent role families from verified evidence and the user's stated direction. Otherwise use the explicit user categories.\n - Build coherent role-family master CVs using those evidence-supported families and the CV standard.\n - Render and visually inspect PDF and editable-source output.\n - Register approved master paths in both config and evidence JSON with `register_masters.py WORKSPACE --master FAMILY=PATH` (repeat `--master` for each family).\n9. Run `state_cli.py --workspace WORKSPACE migrate-assessments`, then `doctor.py WORKSPACE --strict`. Resolve blockers and evidence-readiness warnings.\n10. Run `render_automation_spec.py WORKSPACE`.\n11. If its status is `ACTIVE`, use its full prompt and schedule to create or update the one existing Career Command Center automation with the Codex `automation_update` tool. Do not create a duplicate automation. The automation must target the Codex project containing `WORKSPACE`.\n12. If its status is `PAUSED`, do not create an automation. Pause or delete a previously registered Career Command Center automation if one exists.\n13. Only after the requested active or manual state is reflected in Codex, run:\n\n```bash\npython3 PLUGIN_ROOT/scripts/mark_automation_synced.py WORKSPACE --automation-id AUTOMATION_ID\n```\n\n## Open or Diagnose the App\n\n- Open: `open ~/Applications/'Career Command Center.app'`.\n- Reinstall or update: run `bootstrap_workspace.py WORKSPACE` first to add missing non-destructive workspace contracts, then run `install_app.py --workspace WORKSPACE`.\n- Diagnose: run `doctor.py WORKSPACE`.\n- Never overwrite user documents, evidence, lead state, or application packages during an app update.\n\n## Sync Settings\n\nThe automation reads search countries, opportunity types, work arrangements, role families, thresholds, and exclusions from config on every run. Those edits do not require prompt rewriting.\n\nFrequency, day, time, enabled state, and automation ID changes require synchronization:\n\n1. Render a fresh spec.\n2. Update the existing automation by ID.\n3. Mark synchronized only after the tool succeeds.\n\n## Run a Search Now\n\nWhen asked to run now, read the current config and execute the rendered automation prompt in the current task. Do not alter the saved schedule. Use web research because active postings are time-sensitive.\n\nUse `state_cli.py upsert` for every promoted lead and `state_cli.py record-run` at completion. Never directly rewrite state with string manipulation.\n\n## User Control and Data Handling\n\n- Treat the selected workspace as private career data. Read only files needed for the requested workflow and never publish or transmit them outside Codex without the user's explicit instruction.\n- The companion app stores its state in the user's workspace and has no developer-operated backend or telemetry.\n- Never submit an application, send a message, contact a recruiter, or accept legal terms on the user's behalf unless the user explicitly requests that specific external action and the active environment supports approval.\n- Never fabricate employment facts, dates, skills, education, metrics, project ownership, publications, or language ability. Mark estimates and shared work honestly. Ask for clarification when a material claim cannot be verified.\n- Put source-specific evidence questions in `personalized_questions.json` so the user can answer them in the app. Use chat questions only when the app queue is unavailable or the user explicitly prefers chat.\n- Explain when a third-party job board, employer portal, or document converter will receive user data before using it.\n\n## Lifecycle Rules\n\nRead `references/WORKSPACE_CONTRACT.md` before state work.\n\n- Never rediscover applied, archived, recently deleted, or tombstoned postings.\n- Never create `manual_check`. Promote a verified opportunity or omit it.\n- Archive is reversible.\n- Delete is recoverable until permanent deletion.\n- Permanent deletion retains a minimal dedupe tombstone.\n- Never delete generated application files automatically.\n- Preserve unknown lead fields.\n- Write new assessments using `match_strengths`, `fit_gaps`, `eligibility_constraints`, `application_requirements`, and `search_notes` as defined in the workspace contract.\n- Fit scores measure evidence alignment only. Application materials, deadlines, and submission logistics are never fit penalties.\n\n## CV Rules\n\nRead `references/CV_GENERATION_STANDARD.md` before evidence, master-CV, or package work.\n\n- Build the verified evidence foundation before tailoring.\n- Do not approve a master CV while personalized questions or unreviewed answers still block material claims.\n- Start each tailored CV from one approved role-family master.\n- Keep fixed facts and core accomplishments stable.\n- Target through evidence choice and order, not visible fit commentary.\n- Label estimates and shared contributions honestly.\n- Record strategy version, base master, and evidence IDs in tailoring notes.\n- Render and inspect all delivered documents; a package with a blocker is not ready.\n\n## Support\n\nFor installation or behavior problems, consult `SUPPORT.md` in the plugin root. The public privacy policy and terms are in `PRIVACY.md` and `TERMS.md`.\n"
}SHA-256: 1c84d9d74c56873fc343070583ddb3579e582f06a118eeb551f12912f375d008