career-ops-v1.33.0
rust-lang/rustlingscareer-ops-v1.33.0Sep 16, 2026by github-actions[bot]
Upgrading?
AI Summary
A major feature release adding multi-CLI batch evaluation, new job board providers (Gem, Telegram, Collage HR), and JD archival enforcement.
Key Highlights
- Added `--cli` flag for multi-CLI batch evaluation.
- Added new job board providers including Gem Job Board REST API and Telegram channels.
- Added fetch-jd.mjs to read JDs from Greenhouse, Lever, and Ashby APIs.
- Enforced JD archival in every report.
New Features
- Multi-CLI batch evaluation
- New job board providers (Gem, Telegram, Collage HR)
- JD fetching from public APIs (Greenhouse, Lever, Ashby)
- JD archival enforcement
Full Release Notes
## [1.33.0](https://github.com/career-ops-hq/career-ops/compare/career-ops-v1.32.0...career-ops-v1.33.0) (2026-09-16) ### Features * **batch:** add --cli flag for multi-CLI batch evaluation (opencode, gemini, qwen) ([6255cc2](https://github.com/career-ops-hq/career-ops/commit/6255cc200be7aabe45bf1d5c2ec2e6f52337fd7f)) * **browser-extract:** read Greenhouse, Lever and Ashby JDs from their public APIs, and add fetch-jd.mjs ([#3654](https://github.com/career-ops-hq/career-ops/issues/3654)) ([1923ee1](https://github.com/career-ops-hq/career-ops/commit/1923ee14b2edc635e6ea59a447d0f4fbce02ad48)), closes [#2582](https://github.com/career-ops-hq/career-ops/issues/2582) * **cv:** render an education entry's location on the HTML CV ([#3776](https://github.com/career-ops-hq/career-ops/issues/3776)) ([8e5c65d](https://github.com/career-ops-hq/career-ops/commit/8e5c65dfaedfe5d10d31926a72d79c0d9fef4a10)), closes [#3773](https://github.com/career-ops-hq/career-ops/issues/3773) * **oferta/pdf:** enforce JD archival in every report ([4726e05](https://github.com/career-ops-hq/career-ops/commit/4726e05312e40a1a9e2d61b2e4ccf6851fbd5a4e)) * **portals:** audit board content, not just reachability ([#3610](https://github.com/career-ops-hq/career-ops/issues/3610)) ([9b896b5](https://github.com/career-ops-hq/career-ops/commit/9b896b50a426dd4c07b342f7b79253296aeea684)) * **providers:** add the Gem Job Board REST API as a verified-URL mode alongside the GraphQL provider ([#3783](https://github.com/career-ops-hq/career-ops/issues/3783)) ([0e5a95c](https://github.com/career-ops-hq/career-ops/commit/0e5a95c57d5a6fd40057d1ff7717e509c3524036)) * **providers:** telegram-channel, public channel posts via t.me/s/ (zero-auth) ([#3668](https://github.com/career-ops-hq/career-ops/issues/3668)) ([ab4e5e4](https://github.com/career-ops-hq/career-ops/commit/ab4e5e4821ced4464f468b7a4f7687234d3c4e31)) * **scan:** add Collage HR public job provider ([#3787](https://github.com/career-ops-hq/career-ops/issues/3787)) ([bf2b647](https://github.com/career-ops-hq/career-ops/commit/bf2b64779d659f19df24d82ccd768ab09432d389)) * **scan:** one machine-findable marker line above every scan summary ([#3747](https://github.com/career-ops-hq/career-ops/issues/3747)) ([339ee57](https://github.com/career-ops-hq/career-ops/commit/339ee57e5ac8e31baeb1ea09a12bab1ce3c1d6f6)), closes [#3560](https://github.com/career-ops-hq/career-ops/issues/3560) * **scan:** per-company title_filter_overrides for scan-ats-full.mjs ([#3710](https://github.com/career-ops-hq/career-ops/issues/3710)) ([5fb18d7](https://github.com/career-ops-hq/career-ops/commit/5fb18d7cd2c2f3aa6d5c836eb1416be1d0d3cf5a)), closes [#3708](https://github.com/career-ops-hq/career-ops/issues/3708) * **web:** opt-in origin allowlist for the local dashboard API ([#3597](https://github.com/career-ops-hq/career-ops/issues/3597)) ([0754973](https://github.com/career-ops-hq/career-ops/commit/075497329a55d7c1e5184cfffb21fd0efeaf13ba)) * **wttj:** server-side Algolia filters so a scan can be exhaustive ([#3757](https://github.com/career-ops-hq/career-ops/issues/3757)) ([c1df875](https://github.com/career-ops-hq/career-ops/commit/c1df875c768071369045caaf8c79f06a2fbf3059)) ### Bug Fixes * **analysis:** funnel-velocity, calibrate and weekly-digest read the configured data root ([#3715](https://github.com/career-ops-hq/career-ops/issues/3715)) ([d7ff406](https://github.com/career-ops-hq/career-ops/commit/d7ff4062269f4f1afa38c6615561288ff314f343)), closes [#3714](https://github.com/career-ops-hq/career-ops/issues/3714) * **analyze-patterns:** parse report headers written in French ([#3808](https://github.com/career-ops-hq/career-ops/issues/3808)) ([29f065f](https://github.com/career-ops-hq/career-ops/commit/29f065f1bed9872574c8999343b0102e698b25f4)), closes [#3807](https://github.com/career-ops-hq/career-ops/issues/3807) * **analyze-patterns:** read archetype headers from every localized mode ([#3866](https://github.com/career-ops-hq/career-ops/issues/3866)) ([9d182a9](https://github.com/career-ops-hq/career-ops/commit/9d182a9c2360fbabcfbb9e043fa96b359ef9255e)), closes [#3865](https://github.com/career-ops-hq/career-ops/issues/3865) * **check-jd-archive:** credit jds/ captures named by a tracker row ([5bcaddc](https://github.com/career-ops-hq/career-ops/commit/5bcaddc7fb2cceed869780b4fe36e2786a42e7d3)) * **check-jd-archive:** credit jds/ captures named by a tracker row ([3f9a3fc](https://github.com/career-ops-hq/career-ops/commit/3f9a3fc846ffcbb5b06b5c79e1e61d312ad5681a)) * **check-jd-archive:** reject login-wall/404/paywall/JS-shell text as non-content ([#3837](https://github.com/career-ops-hq/career-ops/issues/3837)) ([3834b91](https://github.com/career-ops-hq/career-ops/commit/3834b91843b903734447633f66fdefd41a42a3d1)), closes [#3829](https://github.com/career-ops-hq/career-ops/issues/3829) * **cli:** validate analyze-patterns flags through lib/cli-flags.mjs ([#3848](https://github.com/career-ops-hq/career-ops/issues/3848)) ([4d82beb](https://github.com/career-ops-hq/career-ops/commit/4d82beb4d3fc40baaef5a1f5d5817b9f797879a8)), closes [#2979](https://github.com/career-ops-hq/career-ops/issues/2979) * **cv:** render the ATS template's contact row ([#3838](https://github.com/career-ops-hq/career-ops/issues/3838)) ([e1aebed](https://github.com/career-ops-hq/career-ops/commit/e1aebed5bb6fd6d55e1cf47808bded623a0e4b48)), closes [#3775](https://github.com/career-ops-hq/career-ops/issues/3775) * **dashboard:** serve:dashboard respects CAREER_OPS_DATA_DIR ([#3929](https://github.com/career-ops-hq/career-ops/issues/3929)) ([b4bd6aa](https://github.com/career-ops-hq/career-ops/commit/b4bd6aa27582f1659085a5804f3c8cd5751eff18)), closes [#3924](https://github.com/career-ops-hq/career-ops/issues/3924) * **discover-ats:** a refused redirect is an answer, not a status to re-run ([#3804](https://github.com/career-ops-hq/career-ops/issues/3804)) ([80885c9](https://github.com/career-ops-hq/career-ops/commit/80885c9c45d288e3a86fa043db635d755afb1630)) * **doctor:** detect project-scoped Playwright MCP plugin installs ([#3711](https://github.com/career-ops-hq/career-ops/issues/3711)) ([719d1a4](https://github.com/career-ops-hq/career-ops/commit/719d1a4c64735fec4eb6f5f4b1616db4d181476c)) * **doctor:** keep git's "not a git repository" off stderr in --json ([#3722](https://github.com/career-ops-hq/career-ops/issues/3722)) ([8058eba](https://github.com/career-ops-hq/career-ops/commit/8058ebac18f248a36efa1dedcfac0a8ea9779b99)), closes [#3721](https://github.com/career-ops-hq/career-ops/issues/3721) * **doctor:** make CLI-resolution tests hermetic against a repo .env ([#2617](https://github.com/career-ops-hq/career-ops/issues/2617)) ([95225c1](https://github.com/career-ops-hq/career-ops/commit/95225c1be267116f44d5758b85e20c029602d33b)) * **eval:** parse the score in gemini-eval instead of concatenating it ([#3799](https://github.com/career-ops-hq/career-ops/issues/3799)) ([eedc6d9](https://github.com/career-ops-hq/career-ops/commit/eedc6d921c2988cfc26fca930044f731292db2c0)), closes [#3707](https://github.com/career-ops-hq/career-ops/issues/3707) * **eval:** persist openai/ollama evaluations as tracker additions ([#3797](https://github.com/career-ops-hq/career-ops/issues/3797)) ([090c2b4](https://github.com/career-ops-hq/career-ops/commit/090c2b4b89b762e32b53e191da06883d82e1f559)) * **followup-cadence:** accept --json, the flag both web follow-up routes pass ([#3862](https://github.com/career-ops-hq/career-ops/issues/3862)) ([57de2ea](https://github.com/career-ops-hq/career-ops/commit/57de2ea1c9dd9d891959926d5e00c2411c05ff60)) * four defects invisible in the maintainer's own checkout ([7f72883](https://github.com/career-ops-hq/career-ops/commit/7f72883d3965430db6aacb264a18be77c5e8358d)) * **garena:** route id encoding through _safe-url so one bad posting drops, not the page ([7bee848](https://github.com/career-ops-hq/career-ops/commit/7bee8480f4a3571d47fd9b2ba888122a21e52c0c)) * **gemini-eval:** write the **URL:** report header so its rows reach the URL dedup key ([#3876](https://github.com/career-ops-hq/career-ops/issues/3876)) ([f8e9201](https://github.com/career-ops-hq/career-ops/commit/f8e9201f2cd0f55f82291482ca57ea313037a8c5)), closes [#3795](https://github.com/career-ops-hq/career-ops/issues/3795) * **gitignore:** ignore the tracker and follow-ups file in the legacy root layout ([#3718](https://github.com/career-ops-hq/career-ops/issues/3718)) ([fc8ee60](https://github.com/career-ops-hq/career-ops/commit/fc8ee60419a56804924f00e7cde7f040a4effc41)), closes [#3717](https://github.com/career-ops-hq/career-ops/issues/3717) * **icims:** read every jobLocation entry when picking the location ([#3728](https://github.com/career-ops-hq/career-ops/issues/3728)) ([d5a5bc9](https://github.com/career-ops-hq/career-ops/commit/d5a5bc90a84e128ad095ad0775535187c73dcf05)), closes [#3727](https://github.com/career-ops-hq/career-ops/issues/3727) * **invite-match:** extract company names in any script, not just ASCII ([#3864](https://github.com/career-ops-hq/career-ops/issues/3864)) ([48513e7](https://github.com/career-ops-hq/career-ops/commit/48513e7951765161ce9ea5c51bc5d43222abd33a)), closes [#3861](https://github.com/career-ops-hq/career-ops/issues/3861) * **invite-match:** resolve set-status.mjs from the code root, not the data root ([cfc6b01](https://github.com/career-ops-hq/career-ops/commit/cfc6b0190eac5a1c919aefeb28a008a97b4d8864)) * **invite-match:** resolve set-status.mjs from the code root, not the data root ([5c65257](https://github.com/career-ops-hq/career-ops/commit/5c652575fd43e818ee0f1be7dc0aff646a3e773e)) * **jd-skill-gap:** resolve cv.md against the data root ([680f847](https://github.com/career-ops-hq/career-ops/commit/680f847d9c58486240141c8b5002b26797ea7e2d)) * **jd-skill-gap:** resolve cv.md against the data root ([#4209](https://github.com/career-ops-hq/career-ops/issues/4209)) ([4795dc1](https://github.com/career-ops-hq/career-ops/commit/4795dc19b8b9a232860c29d8c89210f2efa97277)) * **linkedin-join:** use the real people-search route ([#3811](https://github.com/career-ops-hq/career-ops/issues/3811)) ([b2aa0a9](https://github.com/career-ops-hq/career-ops/commit/b2aa0a976926952e874e7f5bf264ad3e3bdce072)) * **liveness:** stop reusing the headed page after its browser closes ([0baa692](https://github.com/career-ops-hq/career-ops/commit/0baa692755d2d3c1aa3d747910853683dcfbd0f9)) * **liveness:** stop reusing the headed page after its browser closes ([17d83e9](https://github.com/career-ops-hq/career-ops/commit/17d83e942502e90a41abe459f5b86f65ef747114)), closes [#4176](https://github.com/career-ops-hq/career-ops/issues/4176) * **merge-tracker:** --help exits early and post-merge hooks resolve from the code root under an external data root ([#3761](https://github.com/career-ops-hq/career-ops/issues/3761)) ([7a75b99](https://github.com/career-ops-hq/career-ops/commit/7a75b994cb1136513c1353403cd571e30cca9f69)) * **merge-tracker:** a corporate-form merge keeps the row's employer name and prefers an exact company match ([#3812](https://github.com/career-ops-hq/career-ops/issues/3812)) ([fd6cf93](https://github.com/career-ops-hq/career-ops/commit/fd6cf935776fcf8b15be0ad94475747aac55053e)) * **meta:** point CITATION.cff and package.json at career-ops.org, and stop the blurb drifting across five files ([2c76ca4](https://github.com/career-ops-hq/career-ops/commit/2c76ca434555dee6bf6236573225f257bbbdca24)) * **ollama-eval:** stream the response and make num_ctx configurable via OLLAMA_NUM_CTX ([#3922](https://github.com/career-ops-hq/career-ops/issues/3922)) ([fe06051](https://github.com/career-ops-hq/career-ops/commit/fe06051ba57c78934b89355bebe2c67f3a5cdb14)) * **pdf:** recognize Chinese section titles in SECTION_ALIASES ([#3803](https://github.com/career-ops-hq/career-ops/issues/3803)) ([49b6586](https://github.com/career-ops-hq/career-ops/commit/49b6586e5212e7d5e8553e6189f8978484a05387)), closes [#3658](https://github.com/career-ops-hq/career-ops/issues/3658) * **plugin-install:** add --help and reject unknown flags ([#3857](https://github.com/career-ops-hq/career-ops/issues/3857)) ([45f11b7](https://github.com/career-ops-hq/career-ops/commit/45f11b7b9058ec035a3bf3ba251322a2d9fdb392)) * **providers:** a lone surrogate in one id/slug no longer aborts the whole page ([7cdd684](https://github.com/career-ops-hq/career-ops/commit/7cdd6845278948b4d8379fb2fcebf39304e54994)) * **providers:** a lone surrogate in one id/slug no longer aborts the whole page ([d76bea0](https://github.com/career-ops-hq/career-ops/commit/d76bea0e1c3f9a8f3aab20ce583812774ceda23c)) * **providers:** apply default headers case-insensitively ([b12016b](https://github.com/career-ops-hq/career-ops/commit/b12016be15aeddf780ffc30a0010371a140c4319)) * **providers:** coerce before the try; drop tkms encode of the config locale ([94eebce](https://github.com/career-ops-hq/career-ops/commit/94eebced04e524572e201ee65df275a60f370771)) * **providers:** pin accept-encoding so zstd bodies are not truncated ([2049537](https://github.com/career-ops-hq/career-ops/commit/2049537c420e396d08425c6950203718cc55567c)) * **providers:** pin accept-encoding so zstd bodies are not truncated ([3b3a80d](https://github.com/career-ops-hq/career-ops/commit/3b3a80dfdbc14be9be17dd869b036c1a42537e6f)) * **providers:** radancy stops trusting totalResults, cache-busts JSON, retries every fetch ([#3839](https://github.com/career-ops-hq/career-ops/issues/3839)) ([4086d45](https://github.com/career-ops-hq/career-ops/commit/4086d4546b16b00d1de7b0b320933a83c7355835)) * **providers:** route feishu-jobs and mokahr id encoding through _safe-url ([fd3966a](https://github.com/career-ops-hq/career-ops/commit/fd3966aa50fbe8e2b603cf6a226c8b8ae777f3e1)) * **rejection-latency:** report placeholder-employer applications instead of dropping them silently ([#3712](https://github.com/career-ops-hq/career-ops/issues/3712)) ([d9fe917](https://github.com/career-ops-hq/career-ops/commit/d9fe9174d051a551dfd8b26ac4ece5445a509849)) * **rheinmetall:** guard the slug-fallback decode against a malformed percent-escape ([6efda1c](https://github.com/career-ops-hq/career-ops/commit/6efda1c1003188d70a1323685d44fd3882e6c3ed)) * **scan:** opt-in location-aware company+role dedupe ([#3751](https://github.com/career-ops-hq/career-ops/issues/3751)) ([ae97912](https://github.com/career-ops-hq/career-ops/commit/ae979122628b3c3b1746213c29af3a91f1b7f8ce)), closes [#3750](https://github.com/career-ops-hq/career-ops/issues/3750) * **scan:** prioritize configured locations in Workday facet recovery ([#3851](https://github.com/career-ops-hq/career-ops/issues/3851)) ([efede1c](https://github.com/career-ops-hq/career-ops/commit/efede1ce24257411629c37084e5e6c44428bf4e5)), closes [#3850](https://github.com/career-ops-hq/career-ops/issues/3850) * **templates:** make the CV template's second hardcoded color themeable ([#3699](https://github.com/career-ops-hq/career-ops/issues/3699)) ([351f7f5](https://github.com/career-ops-hq/career-ops/commit/351f7f5240b8ef1e7231cee7f906a583b7073834)), closes [#3695](https://github.com/career-ops-hq/career-ops/issues/3695) * **test-all:** discovered-suite guards ignore calls mentioned only in comments ([363b990](https://github.com/career-ops-hq/career-ops/commit/363b990eed503dca486c0e54b79358ebaa37ef2c)) * **test-all:** discovered-suite guards ignore calls mentioned only in comments ([e5c985d](https://github.com/career-ops-hq/career-ops/commit/e5c985d7d6f1dbf47f89bf4432bda890b117288f)) * **tests:** guard subtree-anchored walkers against nested checkouts ([#3792](https://github.com/career-ops-hq/career-ops/issues/3792)) ([5726853](https://github.com/career-ops-hq/career-ops/commit/5726853924fd5d2885413667fbbc0d06809cc3e9)) * **tests:** pass --confirm to apply in the local-paths regression leg ([#3755](https://github.com/career-ops-hq/career-ops/issues/3755)) ([e979d4e](https://github.com/career-ops-hq/career-ops/commit/e979d4e04c35807a3905ebfb3cc87f8d621192ce)) * **tests:** skip nested checkouts by marker, not by the name .git ([#3681](https://github.com/career-ops-hq/career-ops/issues/3681)) ([35a7cdb](https://github.com/career-ops-hq/career-ops/commit/35a7cdb22cd25fcb0ad59795606dfe660baf91c5)), closes [#3499](https://github.com/career-ops-hq/career-ops/issues/3499) * **tkms:** re-encode the config locale, hoisted out of the row loop to fail loud ([5b8f1f0](https://github.com/career-ops-hq/career-ops/commit/5b8f1f0d6cf5900c1cc557bd9c391239801fe4ff)) * **token-tracker:** add MiniMax-M3 and MiniMax-M2.7 rates ([#3800](https://github.com/career-ops-hq/career-ops/issues/3800)) ([8aef9e0](https://github.com/career-ops-hq/career-ops/commit/8aef9e057472972987edca0e3b36fd23c865e283)) * **tracker:** carry the tracker layout through the export round-trip ([#3794](https://github.com/career-ops-hq/career-ops/issues/3794)) ([4f12d84](https://github.com/career-ops-hq/career-ops/commit/4f12d845ed347766a808a1995f2a8bfdf1e6b48e)), closes [#3703](https://github.com/career-ops-hq/career-ops/issues/3703) * **tracker:** map "fecha" to the date column ([#3767](https://github.com/career-ops-hq/career-ops/issues/3767)) ([843d179](https://github.com/career-ops-hq/career-ops/commit/843d179624e09c5b9bc9ec372a2b21dd338ef94e)), closes [#3705](https://github.com/career-ops-hq/career-ops/issues/3705) * **tracker:** resolve addition columns by name so score and status cannot transpose ([00b0296](https://github.com/career-ops-hq/career-ops/commit/00b0296c6071eb955f38404e60a10ceaccad45b5)) * **tracker:** strip invisible control characters at the cell sanitizer ([#3902](https://github.com/career-ops-hq/career-ops/issues/3902)) ([dadc8f6](https://github.com/career-ops-hq/career-ops/commit/dadc8f645388678ae64e38300363586fd3a9fc24)), closes [#3892](https://github.com/career-ops-hq/career-ops/issues/3892) * **triage:** weights sum to 1.00 and a test pins prose against the formula ([#3831](https://github.com/career-ops-hq/career-ops/issues/3831)) ([6a8e876](https://github.com/career-ops-hq/career-ops/commit/6a8e8762168f1302daaa6928460dd027a7c06596)), closes [#3738](https://github.com/career-ops-hq/career-ops/issues/3738) * **update:** resolve preserved files before staging so :(exclude) never reaches --literal-pathspecs ([#3742](https://github.com/career-ops-hq/career-ops/issues/3742)) ([bbfae51](https://github.com/career-ops-hq/career-ops/commit/bbfae511a84964177022bcf44cf7d93aa385390e)), closes [#3740](https://github.com/career-ops-hq/career-ops/issues/3740) * **url-key:** preserve existing fragment comparison params ([02e632e](https://github.com/career-ops-hq/career-ops/commit/02e632e634280ef7224ec268279adbbe9f0650ce)) * **url-key:** preserve hash-route posting identity ([52f314c](https://github.com/career-ops-hq/career-ops/commit/52f314cd268bd0b2de56b71ba236ce288138dac0)) * **url-key:** preserve hash-route posting identity ([965fff3](https://github.com/career-ops-hq/career-ops/commit/965fff30149eff1da2f6b1a937ca3738260b9a2e)) * **verify-cv-facts:** a proposed plan horizon is not a metric claim ([#3656](https://github.com/career-ops-hq/career-ops/issues/3656)) ([ad2e6e8](https://github.com/career-ops-hq/career-ops/commit/ad2e6e8cc41329855645bc5f2a07f6f3af0d49e3)) * **verify-cv-facts:** require a real word, not a bare capital letter, for a title claim ([#3909](https://github.com/career-ops-hq/career-ops/issues/3909)) ([914cac3](https://github.com/career-ops-hq/career-ops/commit/914cac3605dd2473d7765c31a7add127c3a1781d)), closes [#3907](https://github.com/career-ops-hq/career-ops/issues/3907) * **verify-cv-facts:** stop flagging ordinary prose as tool claims ([#3643](https://github.com/career-ops-hq/career-ops/issues/3643)) ([6043ef8](https://github.com/career-ops-hq/career-ops/commit/6043ef811f2c3449ddfe1e658419526fe7aaeda2)), closes [#3639](https://github.com/career-ops-hq/career-ops/issues/3639) * **verify-cv-facts:** tell a disabled fact gate apart from one that ran clean ([#3901](https://github.com/career-ops-hq/career-ops/issues/3901)) ([60f0146](https://github.com/career-ops-hq/career-ops/commit/60f014696822c1744794816c12e51f1bc1d840f2)), closes [#3894](https://github.com/career-ops-hq/career-ops/issues/3894) * **web:** detect a real tailored CV/cover on disk, not just the tracker flag ([0fb2080](https://github.com/career-ops-hq/career-ops/commit/0fb2080db1a5c90b3655bff7fdf74593026adf04)) * **web:** don't let a failed fetch become a scored report ([#3826](https://github.com/career-ops-hq/career-ops/issues/3826)) ([10ede60](https://github.com/career-ops-hq/career-ops/commit/10ede60522f1abd71dfd8c93266f9176180213ac)) * **web:** fence agent CLIs at the spawn boundary ([1d2cb1e](https://github.com/career-ops-hq/career-ops/commit/1d2cb1e125ea3034ff01b464e9a5e2628c0e315f)) * **web:** give grok a parser, and make the token fold per-CLI ([#2689](https://github.com/career-ops-hq/career-ops/issues/2689)) ([c7549fb](https://github.com/career-ops-hq/career-ops/commit/c7549fb3593f9ee456d7118beb80b0ee6e76747c)) * **web:** identify the verdict block by its heading, not by the letter ([#3502](https://github.com/career-ops-hq/career-ops/issues/3502)) ([0ef1bfb](https://github.com/career-ops-hq/career-ops/commit/0ef1bfbe2385551af415e05858900710d0aadd23)) * **web:** parseCliJson misses set-status.mjs's pretty-printed success ([#3602](https://github.com/career-ops-hq/career-ops/issues/3602)) ([848ca44](https://github.com/career-ops-hq/career-ops/commit/848ca440fb2d243ae08205ab3d0bc12903a36c65)) * **web:** resolve the tailored cover for THIS application, not the company's newest ([8fc2bb4](https://github.com/career-ops-hq/career-ops/commit/8fc2bb41db2aad7bf50902ad8a26e726c9637eec)) * **workday:** tag a split whose chosen facet under-covers the board ([#3874](https://github.com/career-ops-hq/career-ops/issues/3874)) ([51a45d9](https://github.com/career-ops-hq/career-ops/commit/51a45d9c3802b0d8ab0de052dc723b2afd33df06))
Related Repositories
A cross-platform desktop All-in-One assistant for Claude Code, Codex, OpenCode, OpenClaw, Grok Build & Hermes Agent. Only official website: ccswitch.io
An open-source remote desktop application designed for self-hosting, as an alternative to TeamViewer.
Build smaller, faster, and more secure desktop and mobile applications with a web frontend.
π RuView turns commodity WiFi signals into real-time spatial intelligence, vital sign monitoring, and presence detection — all without a single pixel of video.
Incredibly fast JavaScript runtime, bundler, test runner, and package manager – all in one