Repository navigation
Releases: hastimal/agentic-career-lab
Release list
v0.10.2 — PyPI README Images & Presentation Fix
Agentic Career Lab v0.10.2
Agentic Career Lab v0.10.2 updates documentation assets and URLs for full compatibility with PyPI and external packaging renderers.
Changes in v0.10.2
- PyPI Image Rendering: Migrated application screenshot and architecture diagram links to absolute GitHub URLs (
raw.githubusercontent.com) so they render seamlessly on both GitHub and PyPI package pages. - Documentation Link Portability: Updated relative documentation links to absolute URLs for consistent navigation across external registry pages.
- Verified Suite: 113 automated tests passing, clean Ruff formatting, and validated packaging metadata.
v0.10.1 — PyPI Release and UVX CLI Launcher
Agentic Career Lab v0.10.1
Agentic Career Lab v0.10.1 introduces official PyPI distribution and the agentic-career-lab CLI launcher for instant, isolated execution via uvx.
Highlights
- First PyPI Publication: Direct installation via
pip install agentic-career-labor one-liner launching viauvx agentic-career-lab. - CLI Launcher & Doctor Diagnostics: Built-in
agentic-career-lab doctorcommand to verify Python runtime, Ollama connectivity, Gemma 4 model availability, and network ports. - Trusted Publishing: Automated, tokenless PyPI releases powered by GitHub Actions OpenID Connect (OIDC).
- Preserved Core Features: Retains full v0.10.0 multi-agent workflow, local private Gemma 4 LLM analysis, synthetic fallback resumes, and interactive Ask Career AI chat.
Agentic Career Lab v0.10.0 — Ask Career AI & Interactive Actions
Agentic Career Lab v0.10.0
What's New
This release introduces Ask Career AI, a privacy-first conversational career assistant powered by local Gemma 4 through Ollama.
Highlights
- Multi-turn Streamlit AI career chat
- Streaming local Gemma 4 responses
- Grounded career tools and agent coordination
- Job selection directly from chat
- Evidence-based skill gap navigation
- Curated learning resource links
- Continue Learning action
- Career Report navigation
- Privacy-conscious resume processing
- Improved model timeout handling
- Automated browser acceptance coverage
Technology
- Python
- Streamlit
- Google ADK integration
- Gemma 4
- Ollama
- Docker Compose
- OpenTelemetry
- Prometheus
- Grafana
- Tempo
Privacy
Local inference is the default.
Uploaded resumes are processed locally.
Cloud execution requires explicit consent.
Validation
- 102 pytest tests passed in pre-release testing
- 10-stage career workflow browser validation
- Five interactive career action browser flows
Known Limitations
- Chat history is session-based.
- Resume Studio editing is planned for v0.11.0.
- Persistent workspace storage is planned for v0.12.0.
- Local inference may be slower during model cold starts.
For setup and quickstart instructions, refer to the README.md.
v0.9.0 — Guided Learning Platform and Career Journey
Agentic Career Lab v0.9.0 — Guided Learning Platform and Career Journey
A privacy-first hybrid multi-agent career platform for students and technical job seekers.
🚀 Key Highlights & Verified Capabilities
- Dedicated My Profile Page: Academic background, graduation year, target career role, location preferences, and demo student profile loader.
- Dashboard Quick Actions: One-click direct exploration cards (Set Up My Profile, Find Matching Jobs, Compare My Resume, Identify Skill Gaps).
- Interactive Career Journey Tracker: Clickable, persistent 3-stage workflow tracker across all major screens with dynamic 'Continue Journey' navigation.
- 100% Private Local Resume Analysis: Powered by Gemma 4 (
gemma4:12b) on Ollama with strict local privacy boundaries. Raw resume data never leaves the student's device. - Explainable Skill Gap Analysis: 3-category evaluation distinguishing Demonstrated Strengths (verified with concrete resume evidence), Mentioned/Partial Skills (coursework or keyword only), and Missing Job Requirements with status explanations.
- 104-Resource Curated Learning Catalog: Multi-modal technical materials spanning 4 dedicated categories:
- 📺 WATCH: 45 verified YouTube video courses and tech conference talks.
- 📖 LEARN: Official documentation, articles, and courses from Google Cloud, CNCF, and Python PSF.
- 💻 PRACTICE: Hands-on interactive sandbox labs (Killercoda, Google Cloud Skills Boost, PGExercises).
- 🛠️ BUILD: Canonical open-source architecture repositories (Google Cloud Microservices Demo, FastAPI, etc.).
- Compact Dark Resource Cards: Small, official 24–32px provider icons/favicons, difficulty and duration chips, and direct canonical action links (
Watch Video ↗,Start Course ↗,Start Lab ↗,View Repository ↗) without large thumbnails or banners. - Guided Weekly Learning Roadmaps: Strict 2-week or 4-week roadmaps with milestone checklists, expected deliverables, and evidence notes fields.
- Independent Progress Decoupling: Separate calculations for Weekly Completion %, Overall Learning Activity Progress %, and Career Preparation Tracker.
- Proactive 'Continue Learning' Banner: Highlights the next incomplete weekly milestone and its associated learning material.
- Exportable Career Action Report: Download comprehensive summary as an ATS-ready Markdown action plan.
- Clean Activity & Diagnostics: Student-facing milestone timeline paired with collapsed developer telemetry.
🧪 Automated Quality Gates & Verification
- Code Standards: Ruff linter and formatter passing 100% across 77 files.
- Test Suite: 75/75 pytest unit and integration tests passing.
- Browser Acceptance Suite: 10/10 automated Playwright browser workflows passing with strict heading assertions.
- Screenshot Manifest: 10 verified desktop views (1440 × 1000) documented in
docs/images/SCREENSHOT-MANIFEST.md.
⚠️ Current Limitations & Roadmap
- Session-Bound Learning Progress: In v0.9.0, weekly checklist and evidence notes persist within active Streamlit session state; permanent SQLite/file storage arrives in v0.12.0.
- Resume Studio & AI Chatbox: Clarified as planned upcoming functionality (v0.10.0–v0.11.0); not yet active for student execution in v0.9.0.
- For complete details, see docs/known-issues.md.
v0.8.0 — OpenTelemetry & Grafana Observability
Milestone 8: OpenTelemetry + Grafana Observability Release
Highlights
- End-to-End Tracing: Instrument Google ADK Coordinator, Job Scout, Private Resume Agent, local Gemma 4 / Ollama, and Skill Builder with OpenTelemetry.
- Observability Stack: Complete Docker Compose profile (
--profile observability) bundling OTel Collector, Tempo, Prometheus, and Grafana. - Pre-provisioned Dashboards: Auto-provisioned Grafana dashboard at http://localhost:3000 with Prometheus metrics and Tempo trace search.
- Strict Privacy Boundaries: Automatic attribute sanitization ensuring raw resume text, user prompts, personal identifiers, completions, and API keys are NEVER exported.
- Verified Local Model Inference: Real end-to-end tracing validated against native Ollama running
gemma4:12b(Apple Silicon Metal GPU accelerated) with captured token metrics and durations. - Quality: 57 passing automated unit and evaluation tests; 100% clean Ruff linting and formatting; 100% automated browser acceptance test passing.
v0.7.0 — Dockerized Agentic Career Lab
Milestone 7: Docker-First Application Distribution
🚀 Overview
Milestone 7 makes Agentic Career Lab reproducibly deployable with a single command:
docker compose up -dThe application starts at http://localhost:8501, allowing students and engineers to upload resumes, analyze skill gaps privately with local Gemma 4 via Ollama, match jobs, and build personalized career roadmaps.
🌟 Key Capabilities
- Docker Compose First: Zero-configuration setup supporting local Gemma 4 inference.
- Production-Conscious Dockerfile: Multi-stage
python:3.11-slimcontainer executing as non-rootappuser(UID 1000) with HTTP healthchecks. - Hardware-Aware Ollama Architecture:
- macOS / Apple Silicon: Default routing through
http://host.docker.internal:11434preserving native Metal GPU acceleration. - Linux / Standalone Profile:
--profile standalonespins up a containerizedollama/ollama:latestinstance with persistent Docker volume storage (agentic_career_lab_ollama_models).
- macOS / Apple Silicon: Default routing through
- Air-Gapped Privacy Boundary: Strict isolation of raw resume text from persistent state and cloud services.
- All 53 Automated Tests Passing: Complete regression test suite and Ruff lint checks verified.
📋 Setup & Verification
See docs/antigravity/07-docker-deployment.md and docs/antigravity/m7-docker-acceptance.md for detailed architecture and measured test evidence.
v0.6.0 — Hybrid Gemini + Gemma 4 Working Demo
🎓 Agentic Career Lab v0.6.0 — Hybrid Gemini + Gemma 4 Working Demo
A privacy-aware, hybrid multi-agent career preparation platform for college students, combining local Gemma 4 reasoning, Google ADK orchestration, and Google Cloud Gemini planning.
🌟 Key Highlights & Features
-
🔒 Strict Local Resume Boundary (Gemma 4 on Ollama):
- Private resume ingestion and evidence extraction run 100% locally on user hardware with
gemma4:12bvia Ollama (http://localhost:11434). - Raw resume text is never transmitted to cloud models (
cloud_allowed=False,fallback_allowed=False). - Deterministic
ClaimValidatorvalidates suggestions against extracted evidence (0 unsupported claims accepted).
- Private resume ingestion and evidence extraction run 100% locally on user hardware with
-
☁ Grounded Cloud Reasoning (Google Gemini on Vertex AI / API):
- High-level learning roadmap synthesis and customized portfolio project generation powered by
gemini-3.6-flash/gemini-3.8-flash. - Only sanitized metadata (
target_roleand missing skill names) is transmitted to the cloud viaCloudPlanningContext. - Enforced by
assert_cloud_safe()privacy guards.
- High-level learning roadmap synthesis and customized portfolio project generation powered by
-
🛡️ Explicit User Privacy Consent:
- Interactive opt-in checkbox in the Streamlit UI before any structured data is shared with Cloud AI.
- If consent is declined, execution automatically and seamlessly falls back to a deterministic Python offline planner.
-
⚙️ Google ADK Multi-Agent Orchestration:
ADKCareerCoordinatorregisters specialist agents (job_scout,private_resume_agent,skill_builder) under a unified coordination layer.- Produces a comprehensive, actionable
CareerActionPlanwith demonstrated strengths, priority gaps, weekly milestones, curated resources, and recommended portfolio projects.
-
🎯 Transparent Opportunity Sourcing:
- Clear UI labeling for
LIVEopportunities (Adzuna API) versusDEMO DATA(deterministic fixtures).
- Clear UI labeling for
🧪 Test & Validation Evidence
- Pytest Suite: 53 passed in 0.69s (100% pass rate).
- Code Quality: Ruff lint and format clean (66 files checked).
- Live Local Gemma 4 Smoke Test:
scripts/smoke_resume_local.pyverified with live Ollamagemma4:12b(passed; zero secret leaks in workflow state). - Live Cloud Gemini Test: Verified live generation via Google GenAI SDK with
gemini-3.6-flashandgemini-3.8-flash. - E2E Integration Verification: Full Job Scout → Private Resume Agent → Skill Builder → Career Action Plan workflow passed cleanly.
- Streamlit Health Check: Verified server initialization and HTTP
200 OKon/_stcore/health.
🚀 Installation & Quick Start
# 1. Clone repository
git clone https://github.com/hastimal/agentic-career-lab.git
cd agentic-career-lab
# 2. Setup Python environment
python3 -m venv .venv
source .venv/bin/activate
pip install -e ".[dev]"
# 3. Pull local Gemma 4 model via Ollama
ollama serve
ollama pull gemma4:12b
# 4. Configure environment (optional cloud key)
cp .env.example .env
# Set GEMINI_API_KEY for live cloud reasoning, or leave blank for deterministic Python fallback
# 5. Launch the Streamlit workspace
streamlit run src/agentic_career_lab/app.py⚠️ Known Limitations
- Local Model Hardware: Local inference with
gemma4:12brequires ~8GB RAM/VRAM. First-time model loading may take 30–60s depending on host machine hardware. - Mock Fallback: If Ollama is offline, resume analysis halts with a clear error rather than leaking data to the cloud.
🗺️ Next Milestones
- Milestone 7: Docker containerization and Google Cloud Run deployment (
uvx agentic-career-labCLI packaging). - Milestone 8: Evaluation benchmarks and OpenTelemetry observability.