Skip to content

infra: Integrate BoomTick CLI and MCP server developer tools #9750

Description

@arii

This issue tracks the integration of BoomTick developer tools (td-cli and MCP server) into the hrm repository using git submodule. Follow these detailed specifications to add and configure it.


Step-by-Step Integration Instructions

Step 1: Add the boomtick repository as a Git Submodule

Add the standalone boomtick repository directly into your project as a submodule at the boomtick-pkg/ path:

git submodule add https://github.com/arii/boomtick.git boomtick-pkg
git submodule update --init --recursive

This puts the BoomTick package folder at the path: boomtick-pkg/.

Step 2: Initialize Configuration Files

Create a file named project_config.json at the root of the workspace:

{
  "github_repo": "arii/hrm",
  "base_branch": "origin/main",
  
  // Scopes and Directories
  "core_dirs": [
    "src/components/",
    "src/features/",
    "src/pages/"
  ],
  "audit_check_dirs": [
    "src/components",
    "src/pages",
    "src/layouts",
    "src/App.tsx"
  ],
  
  // Vite Integration (if frontend SPA)
  "vite_base_path": "/hrm/",
  
  // AI Metrics limits
  "ai_token_input_limit": 800000,
  "ai_token_output_limit": 200000,
  "ai_token_total_limit": 1000000,
  
  // CI parameters
  "max_ci_duration_minutes": 15,
  "visual_snapshot_pixel_threshold": 0.1
}

Step 3: Set Up the Environment

Create a .env file at the root of the hrm workspace:

GITHUB_TOKEN=ghp_your_personal_github_token_here

Set up a Python virtual environment to isolate CLI dependencies:

python3 -m venv .venv
source .venv/bin/activate

Step 4: Install BoomTick CLI

With the virtual environment active, install the Python CLI package in editable mode:

pip install -e boomtick-pkg/cli
pip install -r boomtick-pkg/cli/requirements-dev.txt

Step 5: Build the TypeScript MCP Server

Install Node.js dependencies and build the MCP server:

cd boomtick-pkg/mcp
pnpm install
pnpm run build
pnpm run sync:mcp-schemas
cd ../..

Step 6: Git Hooks Integration (Semantic Indexing)

Set up Git hooks to ensure that BoomTick updates the codebase semantic index .agent-context.json automatically on branch checkouts and merges:

  1. Create a .githooks/ directory in the root of hrm.
  2. Add a post-checkout and post-merge hook:
    #!/bin/bash
    td-cli context-warm --force
  3. Enable local hooks:
    git config core.hooksPath .githooks

Step 7: Verification

Run the diagnostic check to ensure the installation is correct:

td-cli doctor

Updating BoomTick in the Future

To pull in updates from the upstream boomtick repository submodule:

git submodule update --remote --merge

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    Status
    In Progress

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions