ghcp-cli-dashboard 0.1.3__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 Jeff Steinbok
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
@@ -0,0 +1,6 @@
1
+ include README.md
2
+ include requirements.txt
3
+ include LICENSE
4
+ recursive-include src *.py
5
+ recursive-include src/templates *.html
6
+ recursive-include src/static *.css *.js
@@ -0,0 +1,133 @@
1
+ Metadata-Version: 2.4
2
+ Name: ghcp-cli-dashboard
3
+ Version: 0.1.3
4
+ Summary: A local web dashboard that monitors all your GitHub Copilot CLI sessions in real-time
5
+ Home-page: https://github.com/JeffSteinbok/ghcpCliSessionDashboard
6
+ Author: Jeff Steinbok
7
+ License: MIT
8
+ Keywords: copilot github cli dashboard session monitor
9
+ Classifier: Development Status :: 4 - Beta
10
+ Classifier: Intended Audience :: Developers
11
+ Classifier: License :: OSI Approved :: MIT License
12
+ Classifier: Operating System :: OS Independent
13
+ Classifier: Programming Language :: Python :: 3
14
+ Classifier: Programming Language :: Python :: 3.11
15
+ Classifier: Programming Language :: Python :: 3.12
16
+ Classifier: Programming Language :: Python :: 3.13
17
+ Classifier: Topic :: Software Development :: Quality Assurance
18
+ Classifier: Topic :: Utilities
19
+ Requires-Python: >=3.11
20
+ Description-Content-Type: text/markdown
21
+ License-File: LICENSE
22
+ Requires-Dist: flask
23
+ Requires-Dist: pywin32; sys_platform == "win32"
24
+ Dynamic: author
25
+ Dynamic: classifier
26
+ Dynamic: description
27
+ Dynamic: description-content-type
28
+ Dynamic: home-page
29
+ Dynamic: keywords
30
+ Dynamic: license
31
+ Dynamic: license-file
32
+ Dynamic: requires-dist
33
+ Dynamic: requires-python
34
+ Dynamic: summary
35
+
36
+ # Copilot Session Dashboard
37
+ [![GitHub](https://img.shields.io/badge/GitHub-ghcpCliSessionDashboard-blue?logo=github)](https://github.com/JeffSteinbok/ghcpCliSessionDashboard)
38
+ [![GitHub release](https://img.shields.io/github/v/release/JeffSteinbok/ghcpCliSessionDashboard)](https://github.com/JeffSteinbok/ghcpCliSessionDashboard/releases)
39
+
40
+ [![CI](https://github.com/JeffSteinbok/ghcpCliSessionDashboard/actions/workflows/ci.yml/badge.svg)](https://github.com/JeffSteinbok/ghcpCliSessionDashboard/actions/workflows/ci.yml)
41
+ [![Release](https://github.com/JeffSteinbok/ghcpCliSessionDashboard/actions/workflows/release.yml/badge.svg)](https://github.com/JeffSteinbok/ghcpCliSessionDashboard/actions/workflows/release.yml)
42
+
43
+ [![Publish to PyPI](https://github.com/JeffSteinbok/ghcpCliSessionDashboard/actions/workflows/publish-pypi.yml/badge.svg)](https://github.com/JeffSteinbok/ghcpCliSessionDashboard/actions/workflows/publish-pypi.yml)
44
+ [![PyPI version](https://img.shields.io/pypi/v/ghcp-cli-dashboard.svg)](https://pypi.org/project/ghcp-cli-dashboard/)
45
+
46
+ A local web dashboard that monitors all your GitHub Copilot CLI sessions in real-time.
47
+ Designed for power users running multiple Copilot sessions simultaneously.
48
+
49
+ ![Dashboard Screenshot](https://raw.githubusercontent.com/JeffSteinbok/ghcpCliSessionDashboard/main/screenshot.png)
50
+
51
+ > [!IMPORTANT]
52
+ > The dashboard requires the **SESSION_STORE** experimental feature to be enabled in the Copilot CLI. Without it, session history will not be available. Add `"experimental": true` to `~/.copilot/config.json`, then start a new Copilot session. The `session-store.db` file will be created automatically on first run.
53
+
54
+ ## Installation
55
+
56
+ ### Option 1: From PyPI
57
+
58
+ ```bash
59
+ pip install ghcp-cli-dashboard
60
+ ```
61
+
62
+ ### Option 2: From Source
63
+
64
+ ```bash
65
+ # Clone the repo
66
+ git clone https://github.com/JeffSteinbok/ghcpCliDashboard.git
67
+ cd ghcpCliDashboard
68
+
69
+ # Install in editable mode
70
+ pip install -e .
71
+ ```
72
+
73
+ ## Usage
74
+
75
+ ```bash
76
+ # Start the dashboard
77
+ copilot-dashboard start
78
+
79
+ # Start in background
80
+ copilot-dashboard start --background
81
+
82
+ # Check status
83
+ copilot-dashboard status
84
+
85
+ # Stop
86
+ copilot-dashboard stop
87
+ ```
88
+
89
+ Open **http://localhost:5111** in your browser.
90
+
91
+ ## Features
92
+
93
+ ### Session States
94
+ - **Working / Thinking** (green) — session is actively running tools or reasoning
95
+ - **Waiting** (yellow) — session needs your input (`ask_user` or `ask_permission` pending)
96
+ - **Idle** (blue) — session is done and ready for your next task
97
+
98
+ ### Desktop Notifications
99
+ Click the 🔕 button in the header to enable browser notifications. You'll get an alert whenever a session transitions from working to waiting or idle, so you can stay on top of sessions that need attention without watching the dashboard.
100
+
101
+ ### Views
102
+ - **Tile view** (default) — compact card grid to see all sessions at a glance
103
+ - **List view** — detailed expandable rows with full session info
104
+ - Toggle between views with the buttons next to the Active/Previous tabs
105
+
106
+ ### Session Monitoring
107
+ - **Active vs Previous** — sessions with a running `copilot.exe` process appear in the Active tab
108
+ - **Waiting context** — when a session is waiting, shows *what* it's asking (e.g. the `ask_user` question and choices)
109
+ - **Background tasks** — shows count of running subagents per session
110
+ - **YOLO mode indicator** — shows 🔥 YOLO badge for sessions running with `--yolo`
111
+ - **MCP servers** — displays connected MCP servers (e.g. bluebird, icm, github) for both active and past sessions
112
+ - **Project grouping** — sessions are auto-categorized by repo, working directory, or content analysis
113
+
114
+ ### Actions
115
+ - **Focus window** — click 📺 on an active session to bring its terminal window to the foreground
116
+ - **Restart commands** — each session has a copy-pasteable `copilot --resume <id>` command (includes `--yolo` only if the session was running with it)
117
+ - **Session details** — click any session to see checkpoints, recent tool output, references, and conversation history
118
+
119
+ ### Appearance
120
+ - **Light/Dark mode** toggle
121
+ - **Color palettes** — Default and Pink themes
122
+ - **Auto-refresh** — active sessions poll every 5s, full session list every 30s; expanded sections and collapsed groups persist across refreshes
123
+
124
+ ## Prerequisites
125
+
126
+ | Package | Purpose |
127
+ |---------|---------|
128
+ | `flask` | Web server |
129
+ | `pywin32` | Window focus and process detection (Windows-only) |
130
+
131
+ Both are installed automatically via `pip install ghcp-cli-dashboard`.
132
+
133
+ For more details on architecture, data sources, and API endpoints, see [DEVELOPMENT.md](DEVELOPMENT.md).
@@ -0,0 +1,98 @@
1
+ # Copilot Session Dashboard
2
+ [![GitHub](https://img.shields.io/badge/GitHub-ghcpCliSessionDashboard-blue?logo=github)](https://github.com/JeffSteinbok/ghcpCliSessionDashboard)
3
+ [![GitHub release](https://img.shields.io/github/v/release/JeffSteinbok/ghcpCliSessionDashboard)](https://github.com/JeffSteinbok/ghcpCliSessionDashboard/releases)
4
+
5
+ [![CI](https://github.com/JeffSteinbok/ghcpCliSessionDashboard/actions/workflows/ci.yml/badge.svg)](https://github.com/JeffSteinbok/ghcpCliSessionDashboard/actions/workflows/ci.yml)
6
+ [![Release](https://github.com/JeffSteinbok/ghcpCliSessionDashboard/actions/workflows/release.yml/badge.svg)](https://github.com/JeffSteinbok/ghcpCliSessionDashboard/actions/workflows/release.yml)
7
+
8
+ [![Publish to PyPI](https://github.com/JeffSteinbok/ghcpCliSessionDashboard/actions/workflows/publish-pypi.yml/badge.svg)](https://github.com/JeffSteinbok/ghcpCliSessionDashboard/actions/workflows/publish-pypi.yml)
9
+ [![PyPI version](https://img.shields.io/pypi/v/ghcp-cli-dashboard.svg)](https://pypi.org/project/ghcp-cli-dashboard/)
10
+
11
+ A local web dashboard that monitors all your GitHub Copilot CLI sessions in real-time.
12
+ Designed for power users running multiple Copilot sessions simultaneously.
13
+
14
+ ![Dashboard Screenshot](https://raw.githubusercontent.com/JeffSteinbok/ghcpCliSessionDashboard/main/screenshot.png)
15
+
16
+ > [!IMPORTANT]
17
+ > The dashboard requires the **SESSION_STORE** experimental feature to be enabled in the Copilot CLI. Without it, session history will not be available. Add `"experimental": true` to `~/.copilot/config.json`, then start a new Copilot session. The `session-store.db` file will be created automatically on first run.
18
+
19
+ ## Installation
20
+
21
+ ### Option 1: From PyPI
22
+
23
+ ```bash
24
+ pip install ghcp-cli-dashboard
25
+ ```
26
+
27
+ ### Option 2: From Source
28
+
29
+ ```bash
30
+ # Clone the repo
31
+ git clone https://github.com/JeffSteinbok/ghcpCliDashboard.git
32
+ cd ghcpCliDashboard
33
+
34
+ # Install in editable mode
35
+ pip install -e .
36
+ ```
37
+
38
+ ## Usage
39
+
40
+ ```bash
41
+ # Start the dashboard
42
+ copilot-dashboard start
43
+
44
+ # Start in background
45
+ copilot-dashboard start --background
46
+
47
+ # Check status
48
+ copilot-dashboard status
49
+
50
+ # Stop
51
+ copilot-dashboard stop
52
+ ```
53
+
54
+ Open **http://localhost:5111** in your browser.
55
+
56
+ ## Features
57
+
58
+ ### Session States
59
+ - **Working / Thinking** (green) — session is actively running tools or reasoning
60
+ - **Waiting** (yellow) — session needs your input (`ask_user` or `ask_permission` pending)
61
+ - **Idle** (blue) — session is done and ready for your next task
62
+
63
+ ### Desktop Notifications
64
+ Click the 🔕 button in the header to enable browser notifications. You'll get an alert whenever a session transitions from working to waiting or idle, so you can stay on top of sessions that need attention without watching the dashboard.
65
+
66
+ ### Views
67
+ - **Tile view** (default) — compact card grid to see all sessions at a glance
68
+ - **List view** — detailed expandable rows with full session info
69
+ - Toggle between views with the buttons next to the Active/Previous tabs
70
+
71
+ ### Session Monitoring
72
+ - **Active vs Previous** — sessions with a running `copilot.exe` process appear in the Active tab
73
+ - **Waiting context** — when a session is waiting, shows *what* it's asking (e.g. the `ask_user` question and choices)
74
+ - **Background tasks** — shows count of running subagents per session
75
+ - **YOLO mode indicator** — shows 🔥 YOLO badge for sessions running with `--yolo`
76
+ - **MCP servers** — displays connected MCP servers (e.g. bluebird, icm, github) for both active and past sessions
77
+ - **Project grouping** — sessions are auto-categorized by repo, working directory, or content analysis
78
+
79
+ ### Actions
80
+ - **Focus window** — click 📺 on an active session to bring its terminal window to the foreground
81
+ - **Restart commands** — each session has a copy-pasteable `copilot --resume <id>` command (includes `--yolo` only if the session was running with it)
82
+ - **Session details** — click any session to see checkpoints, recent tool output, references, and conversation history
83
+
84
+ ### Appearance
85
+ - **Light/Dark mode** toggle
86
+ - **Color palettes** — Default and Pink themes
87
+ - **Auto-refresh** — active sessions poll every 5s, full session list every 30s; expanded sections and collapsed groups persist across refreshes
88
+
89
+ ## Prerequisites
90
+
91
+ | Package | Purpose |
92
+ |---------|---------|
93
+ | `flask` | Web server |
94
+ | `pywin32` | Window focus and process detection (Windows-only) |
95
+
96
+ Both are installed automatically via `pip install ghcp-cli-dashboard`.
97
+
98
+ For more details on architecture, data sources, and API endpoints, see [DEVELOPMENT.md](DEVELOPMENT.md).
@@ -0,0 +1,133 @@
1
+ Metadata-Version: 2.4
2
+ Name: ghcp-cli-dashboard
3
+ Version: 0.1.3
4
+ Summary: A local web dashboard that monitors all your GitHub Copilot CLI sessions in real-time
5
+ Home-page: https://github.com/JeffSteinbok/ghcpCliSessionDashboard
6
+ Author: Jeff Steinbok
7
+ License: MIT
8
+ Keywords: copilot github cli dashboard session monitor
9
+ Classifier: Development Status :: 4 - Beta
10
+ Classifier: Intended Audience :: Developers
11
+ Classifier: License :: OSI Approved :: MIT License
12
+ Classifier: Operating System :: OS Independent
13
+ Classifier: Programming Language :: Python :: 3
14
+ Classifier: Programming Language :: Python :: 3.11
15
+ Classifier: Programming Language :: Python :: 3.12
16
+ Classifier: Programming Language :: Python :: 3.13
17
+ Classifier: Topic :: Software Development :: Quality Assurance
18
+ Classifier: Topic :: Utilities
19
+ Requires-Python: >=3.11
20
+ Description-Content-Type: text/markdown
21
+ License-File: LICENSE
22
+ Requires-Dist: flask
23
+ Requires-Dist: pywin32; sys_platform == "win32"
24
+ Dynamic: author
25
+ Dynamic: classifier
26
+ Dynamic: description
27
+ Dynamic: description-content-type
28
+ Dynamic: home-page
29
+ Dynamic: keywords
30
+ Dynamic: license
31
+ Dynamic: license-file
32
+ Dynamic: requires-dist
33
+ Dynamic: requires-python
34
+ Dynamic: summary
35
+
36
+ # Copilot Session Dashboard
37
+ [![GitHub](https://img.shields.io/badge/GitHub-ghcpCliSessionDashboard-blue?logo=github)](https://github.com/JeffSteinbok/ghcpCliSessionDashboard)
38
+ [![GitHub release](https://img.shields.io/github/v/release/JeffSteinbok/ghcpCliSessionDashboard)](https://github.com/JeffSteinbok/ghcpCliSessionDashboard/releases)
39
+
40
+ [![CI](https://github.com/JeffSteinbok/ghcpCliSessionDashboard/actions/workflows/ci.yml/badge.svg)](https://github.com/JeffSteinbok/ghcpCliSessionDashboard/actions/workflows/ci.yml)
41
+ [![Release](https://github.com/JeffSteinbok/ghcpCliSessionDashboard/actions/workflows/release.yml/badge.svg)](https://github.com/JeffSteinbok/ghcpCliSessionDashboard/actions/workflows/release.yml)
42
+
43
+ [![Publish to PyPI](https://github.com/JeffSteinbok/ghcpCliSessionDashboard/actions/workflows/publish-pypi.yml/badge.svg)](https://github.com/JeffSteinbok/ghcpCliSessionDashboard/actions/workflows/publish-pypi.yml)
44
+ [![PyPI version](https://img.shields.io/pypi/v/ghcp-cli-dashboard.svg)](https://pypi.org/project/ghcp-cli-dashboard/)
45
+
46
+ A local web dashboard that monitors all your GitHub Copilot CLI sessions in real-time.
47
+ Designed for power users running multiple Copilot sessions simultaneously.
48
+
49
+ ![Dashboard Screenshot](https://raw.githubusercontent.com/JeffSteinbok/ghcpCliSessionDashboard/main/screenshot.png)
50
+
51
+ > [!IMPORTANT]
52
+ > The dashboard requires the **SESSION_STORE** experimental feature to be enabled in the Copilot CLI. Without it, session history will not be available. Add `"experimental": true` to `~/.copilot/config.json`, then start a new Copilot session. The `session-store.db` file will be created automatically on first run.
53
+
54
+ ## Installation
55
+
56
+ ### Option 1: From PyPI
57
+
58
+ ```bash
59
+ pip install ghcp-cli-dashboard
60
+ ```
61
+
62
+ ### Option 2: From Source
63
+
64
+ ```bash
65
+ # Clone the repo
66
+ git clone https://github.com/JeffSteinbok/ghcpCliDashboard.git
67
+ cd ghcpCliDashboard
68
+
69
+ # Install in editable mode
70
+ pip install -e .
71
+ ```
72
+
73
+ ## Usage
74
+
75
+ ```bash
76
+ # Start the dashboard
77
+ copilot-dashboard start
78
+
79
+ # Start in background
80
+ copilot-dashboard start --background
81
+
82
+ # Check status
83
+ copilot-dashboard status
84
+
85
+ # Stop
86
+ copilot-dashboard stop
87
+ ```
88
+
89
+ Open **http://localhost:5111** in your browser.
90
+
91
+ ## Features
92
+
93
+ ### Session States
94
+ - **Working / Thinking** (green) — session is actively running tools or reasoning
95
+ - **Waiting** (yellow) — session needs your input (`ask_user` or `ask_permission` pending)
96
+ - **Idle** (blue) — session is done and ready for your next task
97
+
98
+ ### Desktop Notifications
99
+ Click the 🔕 button in the header to enable browser notifications. You'll get an alert whenever a session transitions from working to waiting or idle, so you can stay on top of sessions that need attention without watching the dashboard.
100
+
101
+ ### Views
102
+ - **Tile view** (default) — compact card grid to see all sessions at a glance
103
+ - **List view** — detailed expandable rows with full session info
104
+ - Toggle between views with the buttons next to the Active/Previous tabs
105
+
106
+ ### Session Monitoring
107
+ - **Active vs Previous** — sessions with a running `copilot.exe` process appear in the Active tab
108
+ - **Waiting context** — when a session is waiting, shows *what* it's asking (e.g. the `ask_user` question and choices)
109
+ - **Background tasks** — shows count of running subagents per session
110
+ - **YOLO mode indicator** — shows 🔥 YOLO badge for sessions running with `--yolo`
111
+ - **MCP servers** — displays connected MCP servers (e.g. bluebird, icm, github) for both active and past sessions
112
+ - **Project grouping** — sessions are auto-categorized by repo, working directory, or content analysis
113
+
114
+ ### Actions
115
+ - **Focus window** — click 📺 on an active session to bring its terminal window to the foreground
116
+ - **Restart commands** — each session has a copy-pasteable `copilot --resume <id>` command (includes `--yolo` only if the session was running with it)
117
+ - **Session details** — click any session to see checkpoints, recent tool output, references, and conversation history
118
+
119
+ ### Appearance
120
+ - **Light/Dark mode** toggle
121
+ - **Color palettes** — Default and Pink themes
122
+ - **Auto-refresh** — active sessions poll every 5s, full session list every 30s; expanded sections and collapsed groups persist across refreshes
123
+
124
+ ## Prerequisites
125
+
126
+ | Package | Purpose |
127
+ |---------|---------|
128
+ | `flask` | Web server |
129
+ | `pywin32` | Window focus and process detection (Windows-only) |
130
+
131
+ Both are installed automatically via `pip install ghcp-cli-dashboard`.
132
+
133
+ For more details on architecture, data sources, and API endpoints, see [DEVELOPMENT.md](DEVELOPMENT.md).
@@ -0,0 +1,20 @@
1
+ LICENSE
2
+ MANIFEST.in
3
+ README.md
4
+ pyproject.toml
5
+ requirements.txt
6
+ setup.py
7
+ ghcp_cli_dashboard.egg-info/PKG-INFO
8
+ ghcp_cli_dashboard.egg-info/SOURCES.txt
9
+ ghcp_cli_dashboard.egg-info/dependency_links.txt
10
+ ghcp_cli_dashboard.egg-info/entry_points.txt
11
+ ghcp_cli_dashboard.egg-info/requires.txt
12
+ ghcp_cli_dashboard.egg-info/top_level.txt
13
+ src/__init__.py
14
+ src/__version__.py
15
+ src/dashboard_app.py
16
+ src/process_tracker.py
17
+ src/session_dashboard.py
18
+ src/static/css/dashboard.css
19
+ src/static/js/dashboard.js
20
+ src/templates/dashboard.html
@@ -0,0 +1,2 @@
1
+ [console_scripts]
2
+ copilot-dashboard = src.session_dashboard:main
@@ -0,0 +1,4 @@
1
+ flask
2
+
3
+ [:sys_platform == "win32"]
4
+ pywin32
@@ -0,0 +1,62 @@
1
+ [tool.ruff]
2
+ line-length = 100
3
+ target-version = "py311"
4
+
5
+ [tool.ruff.format]
6
+ quote-style = "double"
7
+ indent-style = "space"
8
+ line-ending = "auto"
9
+
10
+ [tool.ruff.lint]
11
+ select = [
12
+ "E", # pycodestyle errors
13
+ "W", # pycodestyle warnings
14
+ "F", # pyflakes
15
+ "I", # isort
16
+ "C", # flake8-comprehensions
17
+ "B", # flake8-bugbear
18
+ "UP", # pyupgrade
19
+ "RUF", # ruff-specific rules
20
+ ]
21
+ ignore = [
22
+ "E501", # line too long — ruff format handles Python, but not embedded HTML/JS strings
23
+ "B008", # do not perform function calls in argument defaults
24
+ "C901", # too complex
25
+ ]
26
+
27
+ [tool.ruff.lint.per-file-ignores]
28
+ "__init__.py" = ["F401"]
29
+
30
+ [tool.pytest.ini_options]
31
+ testpaths = ["tests"]
32
+ python_files = ["test_*.py"]
33
+ python_classes = ["Test*"]
34
+ python_functions = ["test_*"]
35
+ addopts = "-v --tb=short"
36
+
37
+ [tool.mypy]
38
+ python_version = "3.11"
39
+ warn_return_any = true
40
+ warn_unused_configs = true
41
+ disallow_untyped_defs = false
42
+ ignore_missing_imports = true
43
+
44
+ [tool.coverage.run]
45
+ source = ["src"]
46
+ omit = [
47
+ "*/tests/*",
48
+ "*/__pycache__/*",
49
+ "*/venv/*",
50
+ ]
51
+
52
+ [tool.coverage.report]
53
+ exclude_lines = [
54
+ "pragma: no cover",
55
+ "def __repr__",
56
+ "raise AssertionError",
57
+ "raise NotImplementedError",
58
+ "if __name__ == .__main__.:",
59
+ "if TYPE_CHECKING:",
60
+ "class .*\\bProtocol\\):",
61
+ "@(abc\\.)?abstractmethod",
62
+ ]
@@ -0,0 +1 @@
1
+ flask
@@ -0,0 +1,4 @@
1
+ [egg_info]
2
+ tag_build =
3
+ tag_date = 0
4
+
@@ -0,0 +1,54 @@
1
+ """Setup script for Copilot Session Dashboard."""
2
+
3
+ from pathlib import Path
4
+
5
+ from setuptools import find_packages, setup
6
+
7
+ # Read requirements from requirements.txt
8
+ requirements_file = Path(__file__).parent / "requirements.txt"
9
+ with open(requirements_file, encoding="utf-8") as f:
10
+ requirements = [line.strip() for line in f if line.strip() and not line.startswith("#")]
11
+
12
+ # Read version from src/__version__.py
13
+ version_file = Path(__file__).parent / "src" / "__version__.py"
14
+ version = {}
15
+ with open(version_file, encoding="utf-8") as f:
16
+ exec(f.read(), version)
17
+
18
+ # Read long description from README
19
+ readme_file = Path(__file__).parent / "README.md"
20
+ with open(readme_file, encoding="utf-8") as f:
21
+ long_description = f.read()
22
+
23
+ setup(
24
+ name="ghcp-cli-dashboard",
25
+ version=version["__version__"],
26
+ description="A local web dashboard that monitors all your GitHub Copilot CLI sessions in real-time",
27
+ long_description=long_description,
28
+ long_description_content_type="text/markdown",
29
+ author="Jeff Steinbok",
30
+ url="https://github.com/JeffSteinbok/ghcpCliSessionDashboard",
31
+ license="MIT",
32
+ packages=find_packages(exclude=["tests", "tests.*"]),
33
+ include_package_data=True,
34
+ install_requires=requirements + ['pywin32; sys_platform == "win32"'],
35
+ python_requires=">=3.11",
36
+ entry_points={
37
+ "console_scripts": [
38
+ "copilot-dashboard=src.session_dashboard:main",
39
+ ],
40
+ },
41
+ classifiers=[
42
+ "Development Status :: 4 - Beta",
43
+ "Intended Audience :: Developers",
44
+ "License :: OSI Approved :: MIT License",
45
+ "Operating System :: OS Independent",
46
+ "Programming Language :: Python :: 3",
47
+ "Programming Language :: Python :: 3.11",
48
+ "Programming Language :: Python :: 3.12",
49
+ "Programming Language :: Python :: 3.13",
50
+ "Topic :: Software Development :: Quality Assurance",
51
+ "Topic :: Utilities",
52
+ ],
53
+ keywords="copilot github cli dashboard session monitor",
54
+ )
@@ -0,0 +1,5 @@
1
+ """Copilot Session Dashboard — monitor all your GitHub Copilot CLI sessions."""
2
+
3
+ from .__version__ import __repository__, __version__
4
+
5
+ __all__ = ["__repository__", "__version__"]
@@ -0,0 +1,4 @@
1
+ """Version information for Copilot Session Dashboard."""
2
+
3
+ __version__ = "0.1.3"
4
+ __repository__ = "https://github.com/JeffSteinbok/ghcpCliSessionDashboard"