Skip to content

Adds Bob Skill for New Joinee Onboarding#1893

Open
bhanvimenghani wants to merge 1 commit into
kruize:mvp_demofrom
bhanvimenghani:bob_skills
Open

Adds Bob Skill for New Joinee Onboarding#1893
bhanvimenghani wants to merge 1 commit into
kruize:mvp_demofrom
bhanvimenghani:bob_skills

Conversation

@bhanvimenghani
Copy link
Copy Markdown
Contributor

@bhanvimenghani bhanvimenghani commented May 4, 2026

Summary

Added a comprehensive Bob skill to streamline new team member onboarding for the Kruize Autotune project.

What is a Bob Skill?

Bob skills are reusable instruction sets that teach Bob AI specialized workflows. This skill provides step-by-step onboarding guidance for
new developers joining the Kruize team.

Changes

  • Created .bob/skills/onboarding/ directory with onboarding skill
  • Added 8 comprehensive documentation files:
    • SKILL.md - Main 10-phase onboarding workflow
    • setup-checklist.md - Complete environment setup guide
    • architecture-overview.md - Kruize architecture deep dive
    • code-structure.md - Codebase walkthrough
    • testing-guide.md - Testing framework and patterns
    • first-pr-guide.md - PR submission workflow
    • api-quick-reference.md - API reference with examples
    • README.md - Skill overview and usage

What This Enables

New team members can now:

  • Follow structured onboarding with Bob's guidance
  • Get environment set up with step-by-step instructions
  • Understand architecture and codebase systematically
  • Learn testing framework and best practices
  • Submit their first PR following team standards
  • Have a single source of truth for onboarding

Onboarding Phases Covered

  1. Project overview & environment setup
  2. Repository & codebase familiarization
  3. Local Kruize deployment
  4. Testing framework understanding
  5. Key Kruize concepts (Experiments, Layers, Profiles)
  6. API familiarization
  7. First contribution workflow
  8. Code review best practices
  9. Team resources & communication
  10. First task assignment

How to Use

Bob will automatically activate this skill when asked about onboarding:
"Help me onboard a new team member"
"Guide a new joinee through Kruize setup"

New team members can also read the documentation directly in .bob/skills/onboarding/

Type of change

  • Bug fix
  • New feature
  • Docs update
  • Breaking change (What changes might users need to make in their application due to this PR?)
  • Requires DB changes
  • Bob Skill Addition

How has this been tested?

Please describe the tests that were run to verify your changes and steps to reproduce. Please specify any test configuration required.

  • New Test X
  • Functional testsuite

Test Configuration

  • Kubernetes clusters tested on:

Checklist 🎯

  • Followed coding guidelines
  • Comments added
  • Dependent changes merged
  • Documentation updated
  • Tests added or updated

Additional information

Include any additional information such as links, test results, screenshots here

Summary by Sourcery

Add a new Bob onboarding skill for Kruize Autotune with comprehensive documentation for setup, architecture, code structure, testing, APIs, and first contribution workflow to streamline new joinee onboarding.

Documentation:

  • Introduce a structured onboarding skill README and main SKILL workflow covering a 10-phase new-joinee journey.
  • Add detailed setup checklist for development environment, clusters, repo and GPG configuration, and local Kruize deployment verification.
  • Document Kruize architecture, core components, data flows, and key concepts such as experiments, profiles, layers, and recommendations.
  • Describe the Java codebase structure, major packages, common patterns, and coding conventions for Autotune.
  • Provide a thorough testing guide covering layout, pytest usage, markers, fixtures, patterns, and best practices.
  • Add a first PR guide detailing git workflow, signed commits, PR creation, review handling, and common issues.
  • Include an API quick reference with common endpoints, curl examples, parameters, status codes, and testing workflows.

@sourcery-ai
Copy link
Copy Markdown
Contributor

sourcery-ai Bot commented May 4, 2026

Reviewer's Guide

Adds a new Bob onboarding skill for Kruize Autotune, consisting of structured onboarding workflow plus six detailed markdown guides covering setup, architecture, code structure, testing, first PR workflow, and API usage, all under .bob/skills/onboarding/.

Sequence diagram for Bob onboarding skill activation

sequenceDiagram
    actor NewJoinee
    actor Mentor
    participant BobAI
    participant BobOnboardingSkill
    participant OnboardingDocs

    NewJoinee->>Mentor: Ask_how_to_get_started_with_Kruize
    Mentor-->>NewJoinee: Suggest_using_Bob_for_onboarding

    NewJoinee->>BobAI: Help_me_onboard_a_new_team_member
    BobAI->>BobOnboardingSkill: Match_intent_onboarding_request
    BobOnboardingSkill-->>BobAI: Load_SKILL_md_and_supporting_docs

    BobAI-->>NewJoinee: Present_onboarding_phases_and_next_step

    loop Guided_onboarding_phases
        NewJoinee->>BobAI: Request_next_step_details
        BobAI->>BobOnboardingSkill: Fetch_step_context_and_targets
        BobOnboardingSkill->>OnboardingDocs: Retrieve_relevant_md_file
        OnboardingDocs-->>BobOnboardingSkill: Return_section_content
        BobOnboardingSkill-->>BobAI: Compose_step_specific_instructions
        BobAI-->>NewJoinee: Explain_actions_and_link_docs
    end
Loading

Flow diagram for onboarding documentation path

flowchart TD
    start["Start_onboarding<br/>(SKILL_md)"]

    start --> setup_checklist
    setup_checklist["setup_checklist_md<br/>Environment_setup"]

    setup_checklist --> arch_overview
    arch_overview["architecture_overview_md<br/>High_level_architecture"]

    arch_overview --> code_structure
    code_structure["code_structure_md<br/>Java_packages_and_modules"]

    code_structure --> testing_guide
    testing_guide["testing_guide_md<br/>Pytest_and_Maven_tests"]

    testing_guide --> api_quick_ref
    api_quick_ref["api_quick_reference_md<br/>Core_API_calls"]

    api_quick_ref --> first_pr
    first_pr["first_pr_guide_md<br/>PR_workflow_and_GPG_commits"]

    first_pr --> complete
    complete["Ready_for_assigned_task<br/>(Onboarding_complete)"]
Loading

File-Level Changes

Change Details Files
Introduce a structured Bob onboarding skill with a 10-phase workflow and link it to supporting docs for new joiners.
  • Define the new-joinee-onboarding skill metadata and narrative workflow in SKILL.md using step components.
  • Describe sequential onboarding phases from project overview and setup through first task assignment.
  • Reference all supporting onboarding documents from the main skill file to keep the flow cohesive.
.bob/skills/onboarding/SKILL.md
Document the complete dev environment and local Kruize deployment process for new contributors.
  • List required tools (Git, Java, Maven, Docker, Python, Kubernetes tools) and verification commands.
  • Provide alternative cluster setup paths for Kind, Minikube, and OpenShift and how to verify cluster health.
  • Describe Kruize deployment, Prometheus setup, port-forwarding, profile creation/import, and verification steps.
  • Include GPG setup and Git configuration for signed commits and contribution readiness checklist.
.bob/skills/onboarding/setup-checklist.md
Provide a high-level architecture overview of Kruize Autotune, including components, data flows, and key concepts.
  • Explain system capabilities and high-level architecture diagram linking UI, backend, DB, metrics, and Kubernetes.
  • Detail core backend components (REST service, analyzer, experiment manager, database, metrics, utils) and their responsibilities.
  • Describe key domain concepts like experiments, metadata/metric/performance profiles, layers, and monitoring modes.
  • Outline end-to-end data flows for experiment creation, results updates, recommendation generation, and metadata import.
.bob/skills/onboarding/architecture-overview.md
Capture detailed Java and repo code structure to orient new developers in the Kruize codebase.
  • Map the top-level project layout (design, manifests, scripts, src, tests, etc.) and where key artifacts live.
  • Break down major Java packages (analyzer, common, database, experimentManager, metrics, operator, service, utils) with responsibilities and key classes.
  • Describe architectural patterns (DAO, validation, response patterns) and typical API and DB workflows like createLayer and listRecommendations.
  • Document coding conventions, logging practices, and standard build commands for Maven-based workflows.
.bob/skills/onboarding/code-structure.md
Define a comprehensive testing guide for Kruize Autotune, including layout, patterns, and best practices.
  • Describe the tests/ directory layout, including local and remote monitoring tests and helper scripts.
  • Explain pytest markers, fixtures, helper modules, and JSON templating for API tests.
  • Provide patterns and examples for positive/negative tests, parametrization, cleanup practices, and debugging techniques.
  • List coverage areas across local and remote monitoring tests and give example workflows for new test development.
.bob/skills/onboarding/testing-guide.md
Document a step-by-step workflow for submitting a first pull request to Kruize.
  • Outline Git workflow for syncing fork, creating branches, making changes, running tests, and pushing branches.
  • Define commit message conventions, GPG-signed commit setup, and common commit types used in the project.
  • Walk through PR creation on GitHub, filling the template, handling review feedback, rebasing, and resolving conflicts.
  • Provide troubleshooting guidance for common Git/GPG issues and a complete example workflow from first issue to merged PR.
.bob/skills/onboarding/first-pr-guide.md
Add a quick reference for frequently used Kruize APIs with curl-based workflows.
  • Document base URL configuration and health check usage.
  • Provide example requests and responses for datasource, metadata, metric profile, performance profile, layer, experiment, results, and recommendation APIs.
  • Summarize common query parameters and HTTP status codes used by the API surface.
  • Include practical tips for using curl, jq, saving responses, and a quick testing workflow sequence.
.bob/skills/onboarding/api-quick-reference.md
Introduce a README for the onboarding skill to describe its purpose, contents, and usage.
  • Summarize the overall goal of the onboarding Bob skill and when it is triggered.
  • List all supporting markdown files with short descriptions and sizes where provided.
  • Describe the 10 onboarding phases and success criteria for new joiners.
  • Give brief guidance for mentors on how to drive onboarding using the skill and docs.
.bob/skills/onboarding/README.md

Tips and commands

Interacting with Sourcery

  • Trigger a new review: Comment @sourcery-ai review on the pull request.
  • Continue discussions: Reply directly to Sourcery's review comments.
  • Generate a GitHub issue from a review comment: Ask Sourcery to create an
    issue from a review comment by replying to it. You can also reply to a
    review comment with @sourcery-ai issue to create an issue from it.
  • Generate a pull request title: Write @sourcery-ai anywhere in the pull
    request title to generate a title at any time. You can also comment
    @sourcery-ai title on the pull request to (re-)generate the title at any time.
  • Generate a pull request summary: Write @sourcery-ai summary anywhere in
    the pull request body to generate a PR summary at any time exactly where you
    want it. You can also comment @sourcery-ai summary on the pull request to
    (re-)generate the summary at any time.
  • Generate reviewer's guide: Comment @sourcery-ai guide on the pull
    request to (re-)generate the reviewer's guide at any time.
  • Resolve all Sourcery comments: Comment @sourcery-ai resolve on the
    pull request to resolve all Sourcery comments. Useful if you've already
    addressed all the comments and don't want to see them anymore.
  • Dismiss all Sourcery reviews: Comment @sourcery-ai dismiss on the pull
    request to dismiss all existing Sourcery reviews. Especially useful if you
    want to start fresh with a new review - don't forget to comment
    @sourcery-ai review to trigger a new review!

Customizing Your Experience

Access your dashboard to:

  • Enable or disable review features such as the Sourcery-generated pull request
    summary, the reviewer's guide, and others.
  • Change the review language.
  • Add, remove or edit custom review instructions.
  • Adjust other review settings.

Getting Help

Copy link
Copy Markdown
Contributor

@sourcery-ai sourcery-ai Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hey - I've left some high level feedback:

  • The new onboarding docs re-describe a lot of existing workflows (e.g., tests, APIs, architecture), so consider explicitly linking to the canonical files (tests/README.md, design/*, existing install docs) instead of duplicating full command sequences to reduce future drift and maintenance overhead.
  • Several commands and paths in the guides (e.g., manifests/autotune/... JSON files, deploy.sh flags, service names/ports) are hard-coded; it would be helpful to cross-check these against current manifests and scripts and either reference them symbolically (or via links) or call out assumptions so they don’t silently go out of sync when the deployment model changes.
Prompt for AI Agents
Please address the comments from this code review:

## Overall Comments
- The new onboarding docs re-describe a lot of existing workflows (e.g., tests, APIs, architecture), so consider explicitly linking to the canonical files (tests/README.md, design/*, existing install docs) instead of duplicating full command sequences to reduce future drift and maintenance overhead.
- Several commands and paths in the guides (e.g., manifests/autotune/... JSON files, deploy.sh flags, service names/ports) are hard-coded; it would be helpful to cross-check these against current manifests and scripts and either reference them symbolically (or via links) or call out assumptions so they don’t silently go out of sync when the deployment model changes.

Sourcery is free for open source - if you like our reviews please consider sharing them ✨
Help me be more useful! Please click 👍 or 👎 on each comment and I'll use the feedback to improve your reviews.

@bhanvimenghani bhanvimenghani self-assigned this May 14, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant