Skip to content
Docs / Open source contributions

Open source

Open source contributions

Turn any open source pull request into a developer story. Track your contributions from draft to merged PR with kairo publish.

The open source flow
  1. git push & open PR

    Submit your pull request on GitHub

  2. kairo publish

    Run in your repository or pass the path

  3. AI analyzes contribution

    Collects PR description, diff stats, and linked issues

  4. Review in terminal

    Preview draft: [P] Publish, [E] Edit, or [C] Cancel

  5. Saved as Private story

    Visible only to you on /oss while work is in progress

  6. Automatic synchronization

    GitHub webhooks record reviews and approval milestones

  7. Merged & Public

    Automatically promoted to public on merge

One Pull Request = One Story#

Standard build logs in Kairo (kairo review) capture individual commits inside repositories you own. But open source contributions work differently:

  • Contributions are multi-commit workflows: You fork, branch, push multiple commits, address maintainer feedback, and resolve review comments.
  • External ownership: The upstream repository belongs to another developer or organization.
  • The story evolves over time: A contribution starts with a proposal, continues through code reviews, and culminates when the pull request is merged.

kairo publish bridges this gap by dedicating a build log to the entire lifecycle of a Pull Request. It starts as a Private build log visible only to you on your Open Source Journey dashboard, and automatically turns Public once the PR is merged into upstream.

Quickstart#

  1. 1. Open a Pull Request on GitHub

    Work on your fork or branch as usual. Push your branch to GitHub and create an open Pull Request targeting the upstream repository.

  2. 2. Run kairo publish

    Inside your repository clone:

    kairo publish
    

    Or specify the path to your repository from anywhere, even if the folder path contains spaces:

    Specify path
    kairo publish "D:/open source/DevBoard"
    

    You can also use the -C flag:

    Using -C flag
    kairo publish -C "D:/open source/DevBoard"
    
  3. 3. Automatic context detection

    The CLI inspects your git remotes (handling both origin and upstream forks), resolves your current branch, and finds the corresponding active Pull Request on GitHub:

    Current Repository
    anoopcodehack/DevBoard
    
    Repository
    anoopcodehack/DevBoard
    
    PR
    #601
    
    Status
    Open
    
  4. 4. AI draft generation

    Kairo gathers rich context from your pull request — title, description, linked issues (e.g. Fixes #497), commit messages, touched files, and diff line changes. The AI writer produces a cohesive, developer-focused narrative:

    AI Build Log
    ------------------
    
    Added celebratory confetti animation on task completion
    
    Contributed to anoopcodehack/DevBoard: issue #497 done - confetti added
    when the task is completed (in both board view and drag-and-drop).
    
    Touched 2 files across 1 commits (+84/-6). Updated KanbanBoard.jsx, TaskCard.jsx.
    
    Waiting for maintainer review.
    
    Tags: #oss #react #kanban
    ------------------
    
    [P] Publish   [E] Edit   [C] Cancel
    >
    
  5. 5. Review and publish

    Type P to save the story, E to edit the title or summary, or C to cancel.

    ✓ Private Build Log created.
    
      Repository   anoopcodehack/DevBoard
      PR           #601
      Status       OPEN
      Visibility   PRIVATE
      URL          https://joinkairo.vercel.app/oss/contributions/cm7...
    

Interactive editing#

If you press E, the CLI prompts you with the drafted title and summary:

  • Press Enter to keep the current value.
  • Type a replacement text to update it.

Once updated, the CLI displays the refreshed draft and presents the [P] Publish prompt again.

Your Open Source Journey dashboard#

All your published open source contributions appear on your dedicated Open Source Journey dashboard (/oss):

  • Filter tabs: Easily filter contributions by All, Open, Merged, Closed, Waiting Review, and Approved.
  • Key analytics: Live stats showing total contributions, merged pull requests, active repositories, and lines contributed.
  • Interactive timeline: Each contribution has a detailed story page at /oss/[contributionId] showing the chronological timeline of events (PR opened, reviews submitted, approval milestones, and merge commits).

Automatic GitHub synchronization#

Once you publish a contribution build log, you do not need to re-run the CLI as your pull request progresses. The Kairo GitHub App automatically receives webhook events from GitHub:

  • Review submitted: When maintainers comment or request changes, an event is logged in your timeline.
  • Approved: When an approving review is submitted, your contribution status updates to Approved.
  • Merged: When your pull request is merged into upstream, Kairo automatically flips the contribution visibility from PRIVATE to PUBLIC, celebrating your work in the community feed.

CLI reference & options#

Command syntax
# Run in current repository
kairo publish

# Run against a specific directory
kairo publish path/to/repo
kairo publish "D:/open source/MyRepo"

# Using standard -C flag
kairo publish -C "D:/open source/MyRepo"

Environment variables

You can configure the CLI for local development or automated CI pipelines using environment variables:

  • KAIRO_API_URL: Overrides the backend endpoint (defaults to https://joinkairo.vercel.app). Set to http://localhost:3000 when running against a local Kairo instance.
  • KAIRO_TOKEN: Direct API bearer token, ideal for CI/CD environments.

Troubleshooting#

Have questions? Check our Troubleshooting guide or the FAQ.