Skip to content

Releases: hastimal/agentic-career-lab

v0.10.2 — PyPI README Images & Presentation Fix

Choose a tag to compare

@hastimal hastimal released this 19 Oct 05:24
ff54c48

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

Choose a tag to compare

@hastimal hastimal released this 19 Oct 05:09
1b69827

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-lab or one-liner launching via uvx agentic-career-lab.
  • CLI Launcher & Doctor Diagnostics: Built-in agentic-career-lab doctor command 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

Choose a tag to compare

@hastimal hastimal released this 18 Oct 23:07

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

Choose a tag to compare

@hastimal hastimal released this 18 Oct 17:32

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

Choose a tag to compare

@hastimal hastimal released this 18 Oct 13:28

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

Choose a tag to compare

@hastimal hastimal released this 17 Oct 12:11

Milestone 7: Docker-First Application Distribution

🚀 Overview

Milestone 7 makes Agentic Career Lab reproducibly deployable with a single command:

docker compose up -d

The 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-slim container executing as non-root appuser (UID 1000) with HTTP healthchecks.
  • Hardware-Aware Ollama Architecture:
    • macOS / Apple Silicon: Default routing through http://host.docker.internal:11434 preserving native Metal GPU acceleration.
    • Linux / Standalone Profile: --profile standalone spins up a containerized ollama/ollama:latest instance with persistent Docker volume storage (agentic_career_lab_ollama_models).
  • 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

Choose a tag to compare

@hastimal hastimal released this 12 Oct 00:38

🎓 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:12b via Ollama (http://localhost:11434).
    • Raw resume text is never transmitted to cloud models (cloud_allowed=False, fallback_allowed=False).
    • Deterministic ClaimValidator validates suggestions against extracted evidence (0 unsupported claims accepted).
  • ☁ 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_role and missing skill names) is transmitted to the cloud via CloudPlanningContext.
    • Enforced by assert_cloud_safe() privacy guards.
  • 🛡️ 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:

    • ADKCareerCoordinator registers specialist agents (job_scout, private_resume_agent, skill_builder) under a unified coordination layer.
    • Produces a comprehensive, actionable CareerActionPlan with demonstrated strengths, priority gaps, weekly milestones, curated resources, and recommended portfolio projects.
  • 🎯 Transparent Opportunity Sourcing:

    • Clear UI labeling for LIVE opportunities (Adzuna API) versus DEMO DATA (deterministic fixtures).

🧪 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.py verified with live Ollama gemma4:12b (passed; zero secret leaks in workflow state).
  • Live Cloud Gemini Test: Verified live generation via Google GenAI SDK with gemini-3.6-flash and gemini-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 OK on /_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:12b requires ~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-lab CLI packaging).
  • Milestone 8: Evaluation benchmarks and OpenTelemetry observability.