Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
44 commits
Select commit Hold shift + click to select a range
75c43d9
feat: add ComfyPR Bot with Slack/Notion integration and fix event han…
snomiao Dec 24, 2025
3f82882
chore: improve .gitignore for security and organization
snomiao Jan 6, 2026
124f008
chore: add configuration placeholders to .env
snomiao Jan 6, 2026
485a274
docs: add bot architecture and TODO tracking documentation
snomiao Jan 6, 2026
fe80b3d
feat: rewrite bot Dockerfile for Bun and Node.js runtime
snomiao Jan 6, 2026
578b899
docs: add unified CLI documentation to bot README
snomiao Jan 6, 2026
eb52c6b
refactor: move notion-search.ts to bot/notion/search.ts
snomiao Jan 6, 2026
8b5beea
feat: add ComfyUI registry search utility
snomiao Jan 6, 2026
c7e49f5
feat: add GitHub code utilities (pr-bot and issue-search)
snomiao Jan 6, 2026
f18f049
docs: add ComfyUI code search documentation
snomiao Jan 6, 2026
0a955fb
feat: add Slack file operations and URL parser utilities
snomiao Jan 6, 2026
85f8767
feat: add unified bot CLI with yargs
snomiao Jan 6, 2026
6982f8d
feat: enhance Slack thread reader with YAML output and metadata
snomiao Jan 6, 2026
94559c0
feat: major refactor of ComfyPR Bot with enhanced capabilities
snomiao Jan 6, 2026
1b9453f
chore: update dependencies for bot capabilities
snomiao Jan 6, 2026
dc97f52
fix: use relative path prefix for cache directories
snomiao Jan 6, 2026
08a4846
feat: add bot service to docker-compose and remove gh-service
snomiao Jan 6, 2026
fe3b75a
chore: remove deprecated github-webhook-event-type
snomiao Jan 6, 2026
fe51c36
feat: add Claude Code skills for bot integrations
snomiao Jan 6, 2026
8a23638
feat: add GitHub webhook API endpoint with event storage
snomiao Jan 6, 2026
2c8172a
Update bot configuration and documentation
snomiao Jan 7, 2026
badc5bf
fix: replace markdown_text with text in Slack API calls
snomiao Jan 8, 2026
c5e1b1a
Add Slack nearby messages reader tool
snomiao Jan 8, 2026
2507af0
chore: add codes/ and tmp/ to .gitignore
snomiao Jan 8, 2026
ff72ce0
feat: add Smart Restart Manager for bot
snomiao Jan 8, 2026
844307f
test: add Working Tasks Manager test suite
snomiao Jan 8, 2026
3ed5ea9
feat: implement Working Tasks state management
snomiao Jan 8, 2026
b0495a9
fix: update pr-bot CLI to use shorter slack upload command
snomiao Jan 8, 2026
1e693ea
refactor: move bot-start.sh to bot/up.sh
snomiao Jan 8, 2026
eaa506e
docs: add Smart Restart Manager documentation
snomiao Jan 8, 2026
24d7f33
docs: add Working Tasks state management documentation
snomiao Jan 8, 2026
5ab3afa
docs: update CLAUDE.md with new features
snomiao Jan 8, 2026
45ac186
fix: handle undefined chunks in terminal render
snomiao Jan 8, 2026
32c17a3
debug: add comprehensive logging for process stream issues
snomiao Jan 8, 2026
0263fa4
Update bot configuration and startup script
snomiao Jan 8, 2026
4de621c
Update bot index
snomiao Jan 8, 2026
da07dcb
Update bot index
snomiao Jan 8, 2026
e8da34d
Update bot index
snomiao Jan 8, 2026
64dd80e
Add gh-frontend-backport-checker task for automated backport workflow
snomiao Jan 13, 2026
345c86f
Add Slack avatar updater and enhance pr-agent with GitHub token auth
snomiao Jan 13, 2026
7792970
fix: correct syntax error in slackMessageUrlParse (comma to semicolon)
snomiao Jan 13, 2026
3fb3fca
chore: trigger CI rebuild
snomiao Jan 13, 2026
372269a
refactor: modularize bot/index.ts using Slack Bolt patterns
snomiao Jan 13, 2026
1f239be
chore: update progress.md and gitignore
snomiao Jan 13, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
65 changes: 65 additions & 0 deletions .claude/skills/code-search/SKILL.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,65 @@
---
name: code-search
description: Search ComfyUI codebase and custom nodes using the comfy-codesearch service. Use when the user wants to find code examples, search for specific functions, or explore ComfyUI repositories.
allowed-tools: Bash
model: haiku
---

# ComfyUI Code Search

This skill searches through ComfyUI codebase and custom nodes using the comfy-codesearch service.

## Usage

```bash
pr-bot code search -q "<SEARCH_QUERY>" [--repo <REPO>] [--path <PATH>]
```

## Parameters

- `-q, --query` (required): Search query text
- `--repo` (optional): Filter by repository (e.g. `Comfy-Org/ComfyUI`)
- `--path` (optional): Filter by file path pattern (e.g. `python`)

## Search Syntax

The search query supports special filters:
- `repo:owner/name` - Search within a specific repository
- `path:pattern` - Search within specific file paths

## Examples

```bash
# Search for binarization features
pr-bot code search -q "binarization"

# Search in specific repository
pr-bot code search -q "last_node_id" --repo Comfy-Org/ComfyUI

# Search with path filter
pr-bot code search -q "last_node_id" --repo Comfy-Org/ComfyUI --path python

# Complex search with inline filters
pr-bot code search -q "repo:Comfy-Org/ComfyUI path:python last_node_id"
```

## Output Format

Returns JSON with search results containing:
- Repository name and URL
- File path and line number
- Code snippet with match context
- GitHub URL to the exact match

## Tips

1. Use quotes around multi-word queries
2. Combine `--repo` and `--path` filters for targeted searches
3. Pipe output to `jq` for JSON parsing: `pr-bot code search -q "test" | jq .results`
4. Check match URLs to jump directly to code on GitHub

## Notes

- Requires `comfy-codesearch` CLI to be installed
- Requires CS_ORIGIN and CS_TOKEN environment variables
- Searches across ComfyUI core and custom nodes registry
80 changes: 80 additions & 0 deletions .claude/skills/github-issue-search/SKILL.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,80 @@
---
name: github-issue-search
description: Search for issues and pull requests across Comfy-Org GitHub repositories. Use when the user wants to find specific issues, bugs, features, or pull requests in ComfyUI-related repositories.
allowed-tools: Bash
model: haiku
---

# GitHub Issue Search

This skill searches for issues and pull requests across all Comfy-Org repositories using the GitHub API.

## Usage

```bash
pr-bot github-issue search -q "<SEARCH_QUERY>" [-l <LIMIT>]
```

## Parameters

- `-q, --query` (required): Search query text
- `-l, --limit` (optional): Maximum number of results to return (default: 10)

## Search Query Syntax

The search supports GitHub's issue search syntax:
- Simple keywords: `authentication bug`
- State filters: `is:open`, `is:closed`
- Type filters: `is:issue`, `is:pr`
- Label filters: `label:bug`, `label:enhancement`
- Author filters: `author:username`
- Date filters: `created:>2024-01-01`

## Examples

```bash
# Search for open bugs
pr-bot github-issue search -q "is:open label:bug" -l 10

# Find authentication-related issues
pr-bot github-issue search -q "authentication bug"

# Search for closed pull requests
pr-bot github-issue search -q "is:pr is:closed" -l 5

# Find issues by author
pr-bot github-issue search -q "author:snomiao is:open"

# Search with date filter
pr-bot github-issue search -q "created:>2024-12-01 is:open"
```

## Output Format

Returns results with:
- Issue/PR number
- Title
- Repository name
- State (open/closed)
- Type (Issue or Pull Request)
- Author username
- Labels
- GitHub URL
- Last updated timestamp

## Repositories Searched

Searches across all Comfy-Org repositories including:
- Comfy-Org/ComfyUI
- Comfy-Org/ComfyUI_frontend
- Comfy-Org/desktop
- Comfy-Org/docs
- Comfy-Org/registry
- And all other Comfy-Org repositories

## Notes

- Requires GitHub authentication token (GH_TOKEN or GH_TOKEN_COMFY_PR)
- Results are sorted by most recently updated
- Automatically loads environment variables from project .env.local
- Search is scoped to org:Comfy-Org automatically
60 changes: 60 additions & 0 deletions .claude/skills/github-pr-bot/SKILL.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
---
name: github-pr-bot
description: Spawn an AI coding sub-agent to make code changes, fix bugs, or add features to GitHub repositories. Use when the user wants to modify code in Comfy-Org repositories, create pull requests, or implement new functionality.
allowed-tools: Bash
---

# GitHub PR Bot (Coding Sub-Agent)

This skill spawns an interactive AI coding agent that can modify code in GitHub repositories, create commits, and propose pull requests.

## Usage

```bash
pr-bot code pr -r <OWNER/REPO> [-b <BRANCH>] -p "<TASK_DESCRIPTION>"
# Or use aliases:
pr-bot github pr -r <OWNER/REPO> [-b <BRANCH>] -p "<TASK_DESCRIPTION>"
pr-bot pr -r <OWNER/REPO> [-b <BRANCH>] -p "<TASK_DESCRIPTION>"
```

## Parameters

- `-r, --repo` (required): GitHub repository in format `owner/repo` (e.g., `Comfy-Org/ComfyUI`)
- `-b, --branch` (optional): Target branch to work on (default: `main`)
- `-p, --prompt` (required): Detailed description of the coding task for the agent

## How It Works

1. **Auto-Clone**: Clones the repository to `/repos/[owner]/[repo]/tree/[branch]/` if not present
2. **Update**: Pulls latest changes if repository already exists
3. **Spawn Agent**: Launches an interactive `claude-yes` coding agent in the repo directory
4. **Full Access**: Agent can read, edit, create files, run tests, and create commits

## Examples

```bash
# Fix a bug in ComfyUI
pr-bot pr -r Comfy-Org/ComfyUI -p "Fix authentication bug in login module - users can't login with special characters in password"

# Add feature to frontend
pr-bot github pr -r Comfy-Org/ComfyUI_frontend -b develop -p "Add dark mode toggle to settings page with persistent user preference"

# Update documentation
pr-bot pr -r Comfy-Org/docs -p "Add troubleshooting section for common installation errors on Windows"
```

## Available Repositories

- `Comfy-Org/ComfyUI` - Main ComfyUI backend (Python)
- `Comfy-Org/ComfyUI_frontend` - Frontend codebase (Vue + TypeScript)
- `Comfy-Org/docs` - Documentation and guides
- `Comfy-Org/desktop` - Desktop application
- `Comfy-Org/registry` - Custom nodes registry
- `Comfy-Org/workflow_templates` - Workflow templates

## Notes

- Agent runs in isolated directory per branch
- Requires GitHub authentication via environment variables
- Agent has full write access to make commits
- Best for tasks that require code modification
49 changes: 49 additions & 0 deletions .claude/skills/notion-search/SKILL.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
---
name: notion-search
description: Search Notion documentation and knowledge base from the Comfy-Org team workspace. Use when the user needs to find internal documentation, guides, meeting notes, or reference materials stored in Notion.
allowed-tools: Bash
model: haiku
---

# Notion Documentation Search

This skill searches the Comfy-Org team Notion workspace for documentation, guides, and internal knowledge.

## Usage

```bash
pr-bot notion search -q "<SEARCH_TERMS>" [-l <NUMBER>]
```

## Parameters

- `-q, --query` (required): Search terms to find in Notion pages
- `-l, --limit` (optional): Maximum number of results to return (default: 10)

## Output Format

Returns results with:
- **Title**: Page title
- **URL**: Direct link to Notion page
- **Last edited**: When the page was last modified
- **Page ID**: Unique identifier

## Examples

```bash
# Search for ComfyUI setup documentation
pr-bot notion search -q "ComfyUI setup" -l 5

# Find meeting notes
pr-bot notion search -q "weekly sync meeting"

# Search for API references
pr-bot notion search -q "API documentation workflow" -l 3
```

## Notes

- Requires Notion API integration token in environment variables
- Searches across all accessible pages in the Comfy-Org workspace
- Returns most recently edited pages first
- Useful for finding internal documentation not in public docs
120 changes: 120 additions & 0 deletions .claude/skills/pr-bot-cli/SKILL.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,120 @@
---
name: comfy-pr-bot-cli
description: Unified command-line interface for all ComfyPR bot capabilities including GitHub PR creation, Slack messaging, and Notion search. Use when the user wants to access any bot functionality through a single unified command.
allowed-tools: Bash
---

# PR-Bot Unified CLI

This skill provides a unified command-line interface for all ComfyPR bot capabilities.

## Available Commands

### Code PR Creation (Automatic)

```bash
pr-bot code pr -r <OWNER/REPO> [-b <BRANCH>] -p "<PROMPT>"
pr-bot github pr -r <OWNER/REPO> [-b <BRANCH>] -p "<PROMPT>" # Alias
pr-bot pr -r <OWNER/REPO> [-b <BRANCH>] -p "<PROMPT>" # Short alias
```

**Options:**
- `-r, --repo`: Repository in format `owner/repo` (required)
- `-b, --branch`: Target branch (default: `main`)
- `-p, --prompt`: Coding task description (required)

### Code Search

```bash
pr-bot code search -q "<QUERY>" [--repo <REPO>] [--path <PATH>]
```

**Options:**
- `-q, --query`: Search query (required)
- `--repo`: Filter by repository (optional)
- `--path`: Filter by file path pattern (optional)

### GitHub Issue Search

```bash
pr-bot github-issue search -q "<QUERY>" [-l <LIMIT>]
```

**Options:**
- `-q, --query`: Search query (required)
- `-l, --limit`: Maximum number of results (default: 10)

### Slack Message Update

```bash
pr-bot slack update -c <CHANNEL_ID> -t <TIMESTAMP> -m "<MESSAGE>"
```

**Options:**
- `-c, --channel`: Slack channel ID (required)
- `-t, --ts`: Message timestamp (required)
- `-m, --text`: New message text (required)

### Slack Thread Reader

```bash
pr-bot slack read-thread -c <CHANNEL_ID> -t <TIMESTAMP> [-l <LIMIT>]
```

**Options:**
- `-c, --channel`: Slack channel ID (required)
- `-t, --ts`: Thread timestamp (required)
- `-l, --limit`: Max messages to retrieve (default: 100)

### Notion Search

```bash
pr-bot notion search -q "<QUERY>" [-l <LIMIT>]
```

**Options:**
- `-q, --query`: Search terms (required)
- `-l, --limit`: Max results (default: 10)

### Registry Search

```bash
pr-bot registry search -q "<QUERY>" [-l <LIMIT>] [--include-deprecated]
```

**Options:**
- `-q, --query`: Search query for custom nodes (required)
- `-l, --limit`: Maximum number of results (default: 10)
- `--include-deprecated`: Include deprecated nodes (default: false)

## Examples

```bash
# Create automatic PR for bug fix
pr-bot code pr -r Comfy-Org/ComfyUI -b main -p "Fix auth bug in login"

# Search ComfyUI code
pr-bot code search -q "binarization" --repo Comfy-Org/ComfyUI

# Search GitHub issues
pr-bot github-issue search -q "is:open label:bug" -l 5

# Search ComfyUI custom nodes registry
pr-bot registry search -q "video" -l 5

# Update Slack message
pr-bot slack update -c C123 -t 1234567890.123456 -m "Working on it"

# Read Slack thread
pr-bot slack read-thread -c C123 -t 1234567890.123456

# Search Notion docs
pr-bot notion search -q "ComfyUI setup" -l 5
```

## Notes

- This is the recommended way to access all bot functionality
- Globally linked as `pr-bot` command
- Run `pr-bot --help` for full command documentation
- Each subcommand has its own `--help` option
Loading