overcode 0.1.2__py3-none-any.whl → 0.1.3__py3-none-any.whl

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.
overcode/tui_helpers.py CHANGED
@@ -18,6 +18,7 @@ from .status_constants import (
18
18
  get_presence_timeline_char as _get_presence_timeline_char,
19
19
  get_presence_color as _get_presence_color,
20
20
  get_daemon_status_style as _get_daemon_status_style,
21
+ STATUS_ASLEEP,
21
22
  STATUS_RUNNING,
22
23
  STATUS_TERMINATED,
23
24
  )
@@ -254,10 +255,10 @@ def get_current_state_times(stats, now: Optional[datetime] = None) -> Tuple[floa
254
255
  if current_elapsed > 0:
255
256
  if stats.current_state == STATUS_RUNNING:
256
257
  green_time += current_elapsed
257
- elif stats.current_state != STATUS_TERMINATED:
258
- # Only count non-green time for non-terminated states
258
+ elif stats.current_state not in (STATUS_TERMINATED, STATUS_ASLEEP):
259
+ # Only count non-green time for non-terminated/non-asleep states (#68)
259
260
  non_green_time += current_elapsed
260
- # else: terminated state - time is frozen, don't accumulate
261
+ # else: terminated or asleep - time is frozen, don't accumulate
261
262
  except (ValueError, AttributeError, TypeError):
262
263
  pass
263
264
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: overcode
3
- Version: 0.1.2
3
+ Version: 0.1.3
4
4
  Summary: A supervisor for managing multiple Claude Code instances in tmux
5
5
  Author: Mike Bond
6
6
  Project-URL: Homepage, https://github.com/mkb23/overcode
@@ -23,6 +23,7 @@ Requires-Dist: textual>=0.40.0
23
23
  Requires-Dist: rich>=13.0.0
24
24
  Requires-Dist: typer>=0.9.0
25
25
  Requires-Dist: pyyaml>=6.0
26
+ Requires-Dist: libtmux>=0.37.0
26
27
  Provides-Extra: dev
27
28
  Requires-Dist: pytest>=7.0.0; extra == "dev"
28
29
  Requires-Dist: pytest-asyncio>=0.21.0; extra == "dev"
@@ -0,0 +1,45 @@
1
+ overcode/__init__.py,sha256=k0UgFgXpc9IwrwwfYT1PMjPQhInprB1wGe-eqq2OeFo,100
2
+ overcode/cli.py,sha256=tQJuc_LF1zPm33n4OJGZP82OMmGUg6x_QAeFCYv0Lbg,32494
3
+ overcode/config.py,sha256=BoGxnDpiD1IYLS1gaw7NQyXrV_qoKBTKOio2Az46xUU,5416
4
+ overcode/daemon_claude_skill.md,sha256=kc3qTzQNvmJoaNfRqmAWN_iMSwkWnfYKzgN0DnexOeE,5614
5
+ overcode/daemon_logging.py,sha256=kfx52LpMhNl1C_Qg62cvQNRIEDisTOpp0-uCRkg-1_s,5275
6
+ overcode/daemon_utils.py,sha256=FoxxOcfbiG5YgkYiyJBOG8PNb0X-2NqHcXWQ_dv0cBs,2405
7
+ overcode/data_export.py,sha256=ZnPXZVh6WI1lzLz51dZIK6fYMXy9CyJsVAglmUQMNKo,8220
8
+ overcode/dependency_check.py,sha256=dAAtKigrAJTnED9_nyZGP39wR56wNJ6bD84iKrQkIMQ,6162
9
+ overcode/exceptions.py,sha256=_H-GtmDRuZQ1Fucbq6_T-4tmC9C706F18poqDs6q1Kw,4795
10
+ overcode/history_reader.py,sha256=gUWlGUk_2IfXWy0zYHve-7TFPaWDrn7y4-m-fYFuGPs,17398
11
+ overcode/implementations.py,sha256=CmT5M0U5y1YIa0omeqJ-J7Kbfw4xtfE6Olrk5Uzkirw,8315
12
+ overcode/interfaces.py,sha256=txVkMHHhQl7dpsBS2jx7sR-BHwKiqlAj-YRw7pFkZdg,1101
13
+ overcode/launcher.py,sha256=OUR3OZc0ZA9sbk1wZ_NzQ7aokI1M3j_oKtNaws1QskM,16127
14
+ overcode/logging_config.py,sha256=BuioELKEdfx_amx35sVIdR1tyf2nbhfmOPLp5778lcs,5755
15
+ overcode/mocks.py,sha256=7eAAdI3yPkModUbpaOp3Ul2nO7pJ6Tlz1L1qQH7nG_0,5289
16
+ overcode/monitor_daemon.py,sha256=roG2jzw4Osem4LqW84471E0P_RWUtuVRbwTMZPdXvGk,26946
17
+ overcode/monitor_daemon_state.py,sha256=aRSdT8rl47_LqmA0cxTd9PHzjXN9gG8Vn13mNz1K08E,15104
18
+ overcode/pid_utils.py,sha256=3sg0DkNXWJpKnGuGqwJAiA1lNB78grDILSDObXgTul0,7570
19
+ overcode/presence_logger.py,sha256=0jIUPrhbeU0CDL9W2J7CbDPbAc-WPD4n4LFJJbLZ7Tc,13338
20
+ overcode/protocols.py,sha256=NfSrm9F4h608eEFvs438KxFBg5r8E0Ni5etBWsS9IeY,4268
21
+ overcode/session_manager.py,sha256=PqdlcwVua6ktkn-soHNMTP5O8u5wRzf-Hf_dnVpnzVM,25235
22
+ overcode/settings.py,sha256=OvSrQr2DdozvI5SSgScAAYDLfjKJECk1CSQk6lOozbQ,14550
23
+ overcode/standing_instructions.py,sha256=F9zYuGY0A7V90-SL2e-kLySfJACJvVjlsDZpq3BEI9k,10034
24
+ overcode/status_constants.py,sha256=ejXJjWCtW7LSjlS0W2gKBPhFjhz3pIHZ_5XitEgnCqw,6317
25
+ overcode/status_detector.py,sha256=-hQgLuHAKVrWYMKKHNv629kmhMJMaY5he6ERsv4S3_U,16592
26
+ overcode/status_history.py,sha256=NzhVuTqHkSqgTTdwNfQ8wudCggYjhelZWxpZh6AmzCM,4778
27
+ overcode/status_patterns.py,sha256=qoXpwJ7Kz_1SLyKpim5dDYNIZWqKfgr-QoyYNK_0IzQ,9279
28
+ overcode/summarizer_client.py,sha256=KTC4Bos4BlMeEmf98ZgNg7LZ_gEl8rMj9Z0LyCtsn0Q,5586
29
+ overcode/summarizer_component.py,sha256=pBvlxxA2WnZ-DdmE_g_L9EMFToFCF3qGMguAiHxIa1o,9828
30
+ overcode/supervisor_daemon.py,sha256=1HITlgKDidtp9Z3FD6ncJTYDFWmhMZovQ1IVM5w2aWo,33325
31
+ overcode/supervisor_layout.sh,sha256=s0Fm4Fj7adv5IOsMx1JuA6OAXCoQx9OUnS1CmV0FOwI,1652
32
+ overcode/tmux_manager.py,sha256=U9MKXCm6-maHotcEeeK4M8LE69md5KZmUB3Tj_QSD20,7742
33
+ overcode/tui.py,sha256=O5k2O4rMnQ0HBACInFHrGuBV7VHBOLO7d4Ixm1-UHO0,151886
34
+ overcode/tui_helpers.py,sha256=9BuYG9bR5MHnoLHM5eair_DX7APV9KCMLrnnQongi_8,14873
35
+ overcode/web_api.py,sha256=L4shmXWpnPZA6DCeYFiVeLobxqFCSYlqbFG8fGupwqI,25815
36
+ overcode/web_chartjs.py,sha256=8wxfa9K0dXrcBOcPF7UkQFsCybNHDXEj9pEtnCDe-6g,205608
37
+ overcode/web_server.py,sha256=YFifXCx2MIJ6ca2c6bi5zKDlTjVgQmNBpkZ9o87kpp0,16674
38
+ overcode/web_server_runner.py,sha256=cRGeLAzsAF8B89SnK8MeFZ7vZCufjAcAiWhRjAtJ63A,3333
39
+ overcode/web_templates.py,sha256=GNqEyabj5-mqlNvw4lVHcNh18ofBLsKwxCUYS4JaKao,58882
40
+ overcode-0.1.3.dist-info/licenses/LICENSE,sha256=6C9I9dhq8QTa4P6LckWXugYJ3xm2ufZKrLymqOqRZFs,1066
41
+ overcode-0.1.3.dist-info/METADATA,sha256=UEhhgQSEAXR1HRRzX0ekruV4SaW92O4xsdsf2pP4_yc,3343
42
+ overcode-0.1.3.dist-info/WHEEL,sha256=wUyA8OaulRlbfwMtmQsvNngGrxQHAvkKcvRmdizlJi0,92
43
+ overcode-0.1.3.dist-info/entry_points.txt,sha256=EveN-QDOji1HFbJAsIH-djI_s0E4KQC6N144arLeRb0,47
44
+ overcode-0.1.3.dist-info/top_level.txt,sha256=5cfXcNbSNvigE7coZgIRPCl_NDWHu_5UIBmWi9Xiupo,9
45
+ overcode-0.1.3.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: setuptools (80.10.1)
2
+ Generator: setuptools (80.10.2)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5
 
@@ -1,45 +0,0 @@
1
- overcode/__init__.py,sha256=ZruEjk2uKTCuffSqw8aToEfRa2SKr7VA37PhYVQZNRo,100
2
- overcode/cli.py,sha256=w3GZrhGqLaUM_zR71rG8g3D1D0oD0JgPeZeKDcg9C5Q,29922
3
- overcode/config.py,sha256=LiuG4HyOZB5GnkYfQmqkEIsIzNeIyUi0PIZc0dctds0,3447
4
- overcode/daemon_claude_skill.md,sha256=74OoUARhconOTmfWQaHaDbWEPc7wZeywVNb6fIIuELE,5177
5
- overcode/daemon_logging.py,sha256=kfx52LpMhNl1C_Qg62cvQNRIEDisTOpp0-uCRkg-1_s,5275
6
- overcode/daemon_utils.py,sha256=FoxxOcfbiG5YgkYiyJBOG8PNb0X-2NqHcXWQ_dv0cBs,2405
7
- overcode/data_export.py,sha256=ZnPXZVh6WI1lzLz51dZIK6fYMXy9CyJsVAglmUQMNKo,8220
8
- overcode/dependency_check.py,sha256=dAAtKigrAJTnED9_nyZGP39wR56wNJ6bD84iKrQkIMQ,6162
9
- overcode/exceptions.py,sha256=_H-GtmDRuZQ1Fucbq6_T-4tmC9C706F18poqDs6q1Kw,4795
10
- overcode/history_reader.py,sha256=fI6lobFne_cM0y6BKMgxluWD3w2SVQ34souH7cUx6qE,14901
11
- overcode/implementations.py,sha256=QpvNW7auQBVvK6VCi_B77kwNf-tz4XwILY_YCNsF1GQ,7931
12
- overcode/interfaces.py,sha256=txVkMHHhQl7dpsBS2jx7sR-BHwKiqlAj-YRw7pFkZdg,1101
13
- overcode/launcher.py,sha256=OUR3OZc0ZA9sbk1wZ_NzQ7aokI1M3j_oKtNaws1QskM,16127
14
- overcode/logging_config.py,sha256=BuioELKEdfx_amx35sVIdR1tyf2nbhfmOPLp5778lcs,5755
15
- overcode/mocks.py,sha256=7eAAdI3yPkModUbpaOp3Ul2nO7pJ6Tlz1L1qQH7nG_0,5289
16
- overcode/monitor_daemon.py,sha256=tFeelz-fSI8g4z0uud6j6Hnj6Shqw8XqBlMGvxCLfEM,26965
17
- overcode/monitor_daemon_state.py,sha256=wD7f2BuS6d7BUS66BtGBevhv_IU3fp9x_4omhV78arE,14856
18
- overcode/pid_utils.py,sha256=CYgG1RBa_0E8DJGzAWYapzpMflEc6MQ0LM4-ttt9YBE,6867
19
- overcode/presence_logger.py,sha256=0jIUPrhbeU0CDL9W2J7CbDPbAc-WPD4n4LFJJbLZ7Tc,13338
20
- overcode/protocols.py,sha256=NfSrm9F4h608eEFvs438KxFBg5r8E0Ni5etBWsS9IeY,4268
21
- overcode/session_manager.py,sha256=Bgp-eiPtyR2GF6i9OoIPsowC_5iGPggwvQYLnOBPEvo,23145
22
- overcode/settings.py,sha256=NUCv1xkFxYvzck2KXQEWn0a98QEEtIG7HuSfPsW10N0,13710
23
- overcode/standing_instructions.py,sha256=F9zYuGY0A7V90-SL2e-kLySfJACJvVjlsDZpq3BEI9k,10034
24
- overcode/status_constants.py,sha256=iBV1ZJABwAam1Rn0a4nRA1iRSE3MOx5MBONmkzAgwqo,6294
25
- overcode/status_detector.py,sha256=1E3qAu_ALIJq2vwvBls0b19kswWKRNaw64gLlz1V0Ig,16306
26
- overcode/status_history.py,sha256=NzhVuTqHkSqgTTdwNfQ8wudCggYjhelZWxpZh6AmzCM,4778
27
- overcode/status_patterns.py,sha256=6OA8mladX-CHtwr0N7c6qJC_ylGQxqjIz36wnAMcS1A,8722
28
- overcode/summarizer_client.py,sha256=RBRx6FCaKzLGfnLb3fKOK1XxmYlqclHvt6O8pSSQFv0,4322
29
- overcode/summarizer_component.py,sha256=IVLM-l2eOfiTAFQ_MX5jDm5lKBbe0nAVGkb0gMlxqhU,9797
30
- overcode/supervisor_daemon.py,sha256=5uDpSsNb8Xv_H99A5hcwnZuH-absdlBzJYcOAEo6i8I,32746
31
- overcode/supervisor_layout.sh,sha256=s0Fm4Fj7adv5IOsMx1JuA6OAXCoQx9OUnS1CmV0FOwI,1652
32
- overcode/tmux_manager.py,sha256=SNqgQN-MLCIlpg1u4Zf0k6OX2uYryKpIZ3PPnF4Jwb0,7624
33
- overcode/tui.py,sha256=M4UBZEKdw-pfU1sMpRJnBAFn117KwGTbQN5sy256VVA,123634
34
- overcode/tui_helpers.py,sha256=U_Po2DEpvBt-4keZgiIld8WMcKWqSeaa-a8-hjP47ec,14812
35
- overcode/web_api.py,sha256=L4shmXWpnPZA6DCeYFiVeLobxqFCSYlqbFG8fGupwqI,25815
36
- overcode/web_chartjs.py,sha256=8wxfa9K0dXrcBOcPF7UkQFsCybNHDXEj9pEtnCDe-6g,205608
37
- overcode/web_server.py,sha256=YFifXCx2MIJ6ca2c6bi5zKDlTjVgQmNBpkZ9o87kpp0,16674
38
- overcode/web_server_runner.py,sha256=cRGeLAzsAF8B89SnK8MeFZ7vZCufjAcAiWhRjAtJ63A,3333
39
- overcode/web_templates.py,sha256=GNqEyabj5-mqlNvw4lVHcNh18ofBLsKwxCUYS4JaKao,58882
40
- overcode-0.1.2.dist-info/licenses/LICENSE,sha256=6C9I9dhq8QTa4P6LckWXugYJ3xm2ufZKrLymqOqRZFs,1066
41
- overcode-0.1.2.dist-info/METADATA,sha256=EjDJkG0qvN-wLl1dUeslsvAOK-OBdmAUwRB7-wBvKSs,3312
42
- overcode-0.1.2.dist-info/WHEEL,sha256=qELbo2s1Yzl39ZmrAibXA2jjPLUYfnVhUNTlyF1rq0Y,92
43
- overcode-0.1.2.dist-info/entry_points.txt,sha256=EveN-QDOji1HFbJAsIH-djI_s0E4KQC6N144arLeRb0,47
44
- overcode-0.1.2.dist-info/top_level.txt,sha256=5cfXcNbSNvigE7coZgIRPCl_NDWHu_5UIBmWi9Xiupo,9
45
- overcode-0.1.2.dist-info/RECORD,,