cimonitor


Namecimonitor JSON
Version 0.1.0 PyPI version JSON
download
home_pageNone
SummaryMonitor GitHub CI workflows, fetch logs, and track build status
upload_time2025-07-13 20:14:27
maintainerNone
docs_urlNone
authorNone
requires_python>=3.10
licenseMIT
keywords actions ci debugging devops github logs monitor workflow
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # CI Monitor

CI Monitor is a command-line tool that lets AI agents and humans instantly access GitHub CI status, logs, and failure details without leaving the terminal.

**Eliminates Copy-Paste Development** - No more copying error messages from GitHub's web interface. Agents can directly access CI failures, logs, and status updates through a simple command-line interface.

**Universal Agent Compatibility** - Works with any AI coding assistant (Claude Code, Cursor, etc.) that can run terminal commands.

## Automated CI Debugging with Claude Code

```bash
# Single command to investigate and fix your PR's CI failures
cimonitor logs --pr 123 | claude \
  "Analyze these CI failures and fix the issues. Commit and push the fixes when done."

# Auto-retry flaky tests and get notified only for real failures
cimonitor watch --pr 123 --retry 3 | claude \
  "Monitor this output. If tests still fail after retries, analyze the logs and notify me with a summary of the real issues."
```

This powerful combination lets you:
- **Stay Focused**: No need to monitor job status and engage with an agent if you see a failure—let the agent do the waiting
- **Fix Real Issues**: Claude Code automatically parses CI logs, identifies root causes, implements fixes, and pushes solutions
- **Handle Flaky Tests**: Auto-retry failing jobs up to N times, only getting notified if failures persist

## Installation

```bash
pip install cimonitor
export GITHUB_TOKEN="your_github_token_here"
```

How to generate a token:
1. Visit [https://github.com/settings/tokens](https://github.com/settings/tokens),
2. "Generate new token" -> "Generate new token (classic)"
3. Check "repo" and "workflow"
4. Generate the token and export it as an environment variable as shown above

## Usage

```bash
# Check CI status
cimonitor status                    # Current branch
cimonitor status --pr 123          # Specific PR
cimonitor status --commit abc1234  # Specific commit

# Get error logs
cimonitor logs                      # Current branch (filtered logs)
cimonitor logs --pr 123            # PR logs
cimonitor logs --raw               # Raw unfiltered logs
cimonitor logs --job-id 12345678   # Specific job logs

# Watch CI progress
cimonitor watch                     # Watch current branch
cimonitor watch --until-complete   # Wait for completion
cimonitor watch --until-fail       # Stop on first failure
cimonitor watch --retry 3          # Auto-retry failed jobs up to 3 times
```

## Command Reference

### Main Command
```
Usage: cimonitor [OPTIONS] COMMAND [ARGS]...

  CI Monitor - Monitor GitHub CI workflows, fetch logs, and track build
  status.

Options:
  --version  Show the version and exit.
  --help     Show this message and exit.

Commands:
  logs    Show error logs for failed CI jobs.
  status  Show CI status for the target commit/branch/PR.
  watch   Watch CI status with real-time updates.
```

### cimonitor status
```
Usage: cimonitor status [OPTIONS]

  Show CI status for the target commit/branch/PR.

Options:
  --pr, --pull-request INTEGER  Pull request number to check
  --commit TEXT                 Specific commit SHA to check
  --branch TEXT                 Specific branch to check (defaults to current
                                branch)
  -v, --verbose                 Show verbose output
  --help                        Show this message and exit.
```

### cimonitor logs
```
Usage: cimonitor logs [OPTIONS]

  Show error logs for failed CI jobs.

Options:
  --pr, --pull-request INTEGER  Pull request number to check
  --commit TEXT                 Specific commit SHA to check
  --branch TEXT                 Specific branch to check (defaults to current
                                branch)
  -v, --verbose                 Show verbose output
  --raw                         Show complete raw logs (for debugging)
  --job-id INTEGER              Show logs for specific job ID only
  --help                        Show this message and exit.
```

### cimonitor watch
```
Usage: cimonitor watch [OPTIONS]

  Watch CI status with real-time updates.

Options:
  --pr, --pull-request INTEGER  Pull request number to check
  --commit TEXT                 Specific commit SHA to check
  --branch TEXT                 Specific branch to check (defaults to current
                                branch)
  -v, --verbose                 Show verbose output
  --until-complete              Wait until all workflows complete
  --until-fail                  Stop on first failure
  --retry COUNT                 Auto-retry failed jobs up to COUNT times
  --help                        Show this message and exit.
```

## What Agents Can Do

**Instant CI Diagnosis** - Check any commit, branch, or PR for failures and get structured output perfect for programmatic analysis.

**Real-Time Monitoring** - Use `watch --until-complete` to watch CI progress live, `watch --until-fail` for fail-fast workflows, or `watch --retry N` to automatically retry failed jobs and filter out flaky test failures.

**Targeted Debugging** - Get step-level failure details and filtered error logs without downloading massive raw logs.

**Multi-Branch Operations** - Seamlessly check CI status across different branches, PRs, and commits in automated workflows.

## License

MIT License - see [LICENSE](LICENSE) file for details.

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "cimonitor",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.10",
    "maintainer_email": null,
    "keywords": "actions, ci, debugging, devops, github, logs, monitor, workflow",
    "author": null,
    "author_email": "Steve Landey <steve@steveasleep.com>",
    "download_url": "https://files.pythonhosted.org/packages/4a/df/23643b99edd03300a9090d4153e06f1ec628b1ff459337e78ab6961217ad/cimonitor-0.1.0.tar.gz",
    "platform": null,
    "description": "# CI Monitor\n\nCI Monitor is a command-line tool that lets AI agents and humans instantly access GitHub CI status, logs, and failure details without leaving the terminal.\n\n**Eliminates Copy-Paste Development** - No more copying error messages from GitHub's web interface. Agents can directly access CI failures, logs, and status updates through a simple command-line interface.\n\n**Universal Agent Compatibility** - Works with any AI coding assistant (Claude Code, Cursor, etc.) that can run terminal commands.\n\n## Automated CI Debugging with Claude Code\n\n```bash\n# Single command to investigate and fix your PR's CI failures\ncimonitor logs --pr 123 | claude \\\n  \"Analyze these CI failures and fix the issues. Commit and push the fixes when done.\"\n\n# Auto-retry flaky tests and get notified only for real failures\ncimonitor watch --pr 123 --retry 3 | claude \\\n  \"Monitor this output. If tests still fail after retries, analyze the logs and notify me with a summary of the real issues.\"\n```\n\nThis powerful combination lets you:\n- **Stay Focused**: No need to monitor job status and engage with an agent if you see a failure\u2014let the agent do the waiting\n- **Fix Real Issues**: Claude Code automatically parses CI logs, identifies root causes, implements fixes, and pushes solutions\n- **Handle Flaky Tests**: Auto-retry failing jobs up to N times, only getting notified if failures persist\n\n## Installation\n\n```bash\npip install cimonitor\nexport GITHUB_TOKEN=\"your_github_token_here\"\n```\n\nHow to generate a token:\n1. Visit [https://github.com/settings/tokens](https://github.com/settings/tokens),\n2. \"Generate new token\" -> \"Generate new token (classic)\"\n3. Check \"repo\" and \"workflow\"\n4. Generate the token and export it as an environment variable as shown above\n\n## Usage\n\n```bash\n# Check CI status\ncimonitor status                    # Current branch\ncimonitor status --pr 123          # Specific PR\ncimonitor status --commit abc1234  # Specific commit\n\n# Get error logs\ncimonitor logs                      # Current branch (filtered logs)\ncimonitor logs --pr 123            # PR logs\ncimonitor logs --raw               # Raw unfiltered logs\ncimonitor logs --job-id 12345678   # Specific job logs\n\n# Watch CI progress\ncimonitor watch                     # Watch current branch\ncimonitor watch --until-complete   # Wait for completion\ncimonitor watch --until-fail       # Stop on first failure\ncimonitor watch --retry 3          # Auto-retry failed jobs up to 3 times\n```\n\n## Command Reference\n\n### Main Command\n```\nUsage: cimonitor [OPTIONS] COMMAND [ARGS]...\n\n  CI Monitor - Monitor GitHub CI workflows, fetch logs, and track build\n  status.\n\nOptions:\n  --version  Show the version and exit.\n  --help     Show this message and exit.\n\nCommands:\n  logs    Show error logs for failed CI jobs.\n  status  Show CI status for the target commit/branch/PR.\n  watch   Watch CI status with real-time updates.\n```\n\n### cimonitor status\n```\nUsage: cimonitor status [OPTIONS]\n\n  Show CI status for the target commit/branch/PR.\n\nOptions:\n  --pr, --pull-request INTEGER  Pull request number to check\n  --commit TEXT                 Specific commit SHA to check\n  --branch TEXT                 Specific branch to check (defaults to current\n                                branch)\n  -v, --verbose                 Show verbose output\n  --help                        Show this message and exit.\n```\n\n### cimonitor logs\n```\nUsage: cimonitor logs [OPTIONS]\n\n  Show error logs for failed CI jobs.\n\nOptions:\n  --pr, --pull-request INTEGER  Pull request number to check\n  --commit TEXT                 Specific commit SHA to check\n  --branch TEXT                 Specific branch to check (defaults to current\n                                branch)\n  -v, --verbose                 Show verbose output\n  --raw                         Show complete raw logs (for debugging)\n  --job-id INTEGER              Show logs for specific job ID only\n  --help                        Show this message and exit.\n```\n\n### cimonitor watch\n```\nUsage: cimonitor watch [OPTIONS]\n\n  Watch CI status with real-time updates.\n\nOptions:\n  --pr, --pull-request INTEGER  Pull request number to check\n  --commit TEXT                 Specific commit SHA to check\n  --branch TEXT                 Specific branch to check (defaults to current\n                                branch)\n  -v, --verbose                 Show verbose output\n  --until-complete              Wait until all workflows complete\n  --until-fail                  Stop on first failure\n  --retry COUNT                 Auto-retry failed jobs up to COUNT times\n  --help                        Show this message and exit.\n```\n\n## What Agents Can Do\n\n**Instant CI Diagnosis** - Check any commit, branch, or PR for failures and get structured output perfect for programmatic analysis.\n\n**Real-Time Monitoring** - Use `watch --until-complete` to watch CI progress live, `watch --until-fail` for fail-fast workflows, or `watch --retry N` to automatically retry failed jobs and filter out flaky test failures.\n\n**Targeted Debugging** - Get step-level failure details and filtered error logs without downloading massive raw logs.\n\n**Multi-Branch Operations** - Seamlessly check CI status across different branches, PRs, and commits in automated workflows.\n\n## License\n\nMIT License - see [LICENSE](LICENSE) file for details.\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "Monitor GitHub CI workflows, fetch logs, and track build status",
    "version": "0.1.0",
    "project_urls": null,
    "split_keywords": [
        "actions",
        " ci",
        " debugging",
        " devops",
        " github",
        " logs",
        " monitor",
        " workflow"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "540b864ee7e879ee50282b702e9d7debdd5a623651353c5e6da37e6555852d2f",
                "md5": "3b54e658298ef682e3399b5786c6aaef",
                "sha256": "0b723c8f94bdfe674e40c97bf2fedeb4620ca64344403d239bfdf265dc537cc7"
            },
            "downloads": -1,
            "filename": "cimonitor-0.1.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "3b54e658298ef682e3399b5786c6aaef",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.10",
            "size": 12594,
            "upload_time": "2025-07-13T20:14:25",
            "upload_time_iso_8601": "2025-07-13T20:14:25.710213Z",
            "url": "https://files.pythonhosted.org/packages/54/0b/864ee7e879ee50282b702e9d7debdd5a623651353c5e6da37e6555852d2f/cimonitor-0.1.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "4adf23643b99edd03300a9090d4153e06f1ec628b1ff459337e78ab6961217ad",
                "md5": "29cedc7353e7a28f20acc99284139b5a",
                "sha256": "ed0febde55e66c7a0c56a64960295b992cfb2f3a065e13fb3032dca9563af08b"
            },
            "downloads": -1,
            "filename": "cimonitor-0.1.0.tar.gz",
            "has_sig": false,
            "md5_digest": "29cedc7353e7a28f20acc99284139b5a",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.10",
            "size": 47527,
            "upload_time": "2025-07-13T20:14:27",
            "upload_time_iso_8601": "2025-07-13T20:14:27.214377Z",
            "url": "https://files.pythonhosted.org/packages/4a/df/23643b99edd03300a9090d4153e06f1ec628b1ff459337e78ab6961217ad/cimonitor-0.1.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-07-13 20:14:27",
    "github": false,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "lcname": "cimonitor"
}
        
Elapsed time: 0.45828s