aline-ai 0.1.5__py3-none-any.whl → 0.1.6__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.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: aline-ai
3
- Version: 0.1.5
3
+ Version: 0.1.6
4
4
  Summary: Shared AI memory; everyone knows everything in teams
5
5
  Author: Sharemind
6
6
  License: MIT
@@ -1,5 +1,5 @@
1
- aline_ai-0.1.5.dist-info/licenses/LICENSE,sha256=H8wTqV5IF1oHw_HbBtS1PSDU8G_q81yblEIL_JfV8Vo,1077
2
- realign/__init__.py,sha256=CDA16K-Mc8tSfIhf-tvPjqevV8EFzXGEK_DxhKlCZhs,68
1
+ aline_ai-0.1.6.dist-info/licenses/LICENSE,sha256=H8wTqV5IF1oHw_HbBtS1PSDU8G_q81yblEIL_JfV8Vo,1077
2
+ realign/__init__.py,sha256=7fKH0C4lNvrYFiQ00kUEAH-H3RUUMLXG-69ehNncimI,68
3
3
  realign/claude_detector.py,sha256=NLxI0zJWcqNxNha9jAy9AslTMwHKakCc9yPGdkrbiFE,3028
4
4
  realign/cli.py,sha256=bkwS329jMDEkrUEihXRN2DDyeTKE6HbAysoDxxskZ8g,941
5
5
  realign/codex_detector.py,sha256=RI3JbZgebrhoqpRfTBMfclYCAISN7hZAHVW3bgftJpU,4428
@@ -7,7 +7,7 @@ realign/config.py,sha256=jarinbr0mA6e5DmgY19b_VpMnxk6SOYTwyvB9luq0ww,7207
7
7
  realign/hooks.py,sha256=qhAeuln_62OgTq0vboZcUAuP2apOrNn58vSZqKwNmWQ,36456
8
8
  realign/logging_config.py,sha256=KvkKktF-bkUu031y9vgUoHpsbnOw7ud25jhpzliNZwA,4929
9
9
  realign/mcp_server.py,sha256=-LAJIsxN8U1VSzr-8TYhV9s2jC_t4_XdblnGAcbaKNk,17572
10
- realign/mcp_watcher.py,sha256=gqGlDWnKzH0hsqlf9LRobEPvfh4JoOz8kenvwZ5ICn8,14653
10
+ realign/mcp_watcher.py,sha256=a_9R0r4DM8a9BiRIimJlY8_EhoHTQcTo55yCf4vVYOU,16163
11
11
  realign/redactor.py,sha256=uZvLKKGrRGJm-qM8S4XJyJK6i0CSSby_wbKiay7VGJw,8148
12
12
  realign/commands/__init__.py,sha256=GG6IMw6fUBQAXGJDFJvOOQgv6pkiRSfMh8z3AYXTyRM,31
13
13
  realign/commands/auto_commit.py,sha256=_DOw7nt9q3tD_Y3qDL9IFKAUG1hM4qH_xZ-9nyBc2Bc,7451
@@ -16,8 +16,8 @@ realign/commands/config.py,sha256=oarvn6UuGT8svd2h5_8M_ueV5QWOCUOn8SYoa4XYjs8,65
16
16
  realign/commands/init.py,sha256=EpSzh2Dd2EmEQ_wo3vAsg6Uq7_YOlQWIpzIkZa_2y0A,11863
17
17
  realign/commands/search.py,sha256=0CZaXll99wtd01MRiZk5NAblxgogc4RUAzMyJunvckE,18044
18
18
  realign/commands/show.py,sha256=P1waa94-AKJr9XjagkE40OHMXzE6IwC74DpeDKqwsqw,16693
19
- aline_ai-0.1.5.dist-info/METADATA,sha256=wdN5dpuh8P-2ioSkUdi6Lgj0Q9E2Iyq12dtvHGsIqMc,1398
20
- aline_ai-0.1.5.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
21
- aline_ai-0.1.5.dist-info/entry_points.txt,sha256=h-NocHDzSueXfsepHTIdRPNQzhNZQPAztJfldd-mQTE,202
22
- aline_ai-0.1.5.dist-info/top_level.txt,sha256=yIL3s2xv9nf1GwD5n71Aq_JEIV4AfzCIDNKBzewuRm4,8
23
- aline_ai-0.1.5.dist-info/RECORD,,
19
+ aline_ai-0.1.6.dist-info/METADATA,sha256=GK1pSW1EFmnNV2ojpzEBhoBDlQrYKr9OAf4c_VELcww,1398
20
+ aline_ai-0.1.6.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
21
+ aline_ai-0.1.6.dist-info/entry_points.txt,sha256=h-NocHDzSueXfsepHTIdRPNQzhNZQPAztJfldd-mQTE,202
22
+ aline_ai-0.1.6.dist-info/top_level.txt,sha256=yIL3s2xv9nf1GwD5n71Aq_JEIV4AfzCIDNKBzewuRm4,8
23
+ aline_ai-0.1.6.dist-info/RECORD,,
realign/__init__.py CHANGED
@@ -1,3 +1,3 @@
1
1
  """Aline - AI Agent Chat Session Tracker."""
2
2
 
3
- __version__ = "0.1.5"
3
+ __version__ = "0.1.6"
realign/mcp_watcher.py CHANGED
@@ -37,11 +37,23 @@ class DialogueWatcher:
37
37
  print("[MCP Watcher] Started watching for dialogue completion", file=sys.stderr)
38
38
  print(f"[MCP Watcher] Mode: Per-request (triggers at end of each Claude response)", file=sys.stderr)
39
39
  print(f"[MCP Watcher] Debounce: {self.debounce_delay}s, Cooldown: {self.min_commit_interval}s", file=sys.stderr)
40
+ print(f"[MCP Watcher] Home directory: {Path.home()}", file=sys.stderr)
40
41
 
41
42
  # Initialize baseline sizes and stop_reason counts
42
43
  self.last_session_sizes = self._get_session_sizes()
43
44
  self.last_stop_reason_counts = self._get_stop_reason_counts()
44
45
 
46
+ # Log initial session files being monitored
47
+ if self.last_session_sizes:
48
+ print(f"[MCP Watcher] Monitoring {len(self.last_session_sizes)} session file(s):", file=sys.stderr)
49
+ for session_path in list(self.last_session_sizes.keys())[:5]: # Show first 5
50
+ print(f" - {session_path}", file=sys.stderr)
51
+ if len(self.last_session_sizes) > 5:
52
+ print(f" ... and {len(self.last_session_sizes) - 5} more", file=sys.stderr)
53
+ else:
54
+ claude_projects = Path.home() / ".claude" / "projects"
55
+ print(f"[MCP Watcher] WARNING: No session files found in {claude_projects}", file=sys.stderr)
56
+
45
57
  # Poll for file changes more frequently
46
58
  while self.running:
47
59
  try:
@@ -174,6 +186,8 @@ class DialogueWatcher:
174
186
  continue
175
187
 
176
188
  await self._do_commit(project_path)
189
+ else:
190
+ print(f"[MCP Watcher] WARNING: Could not extract project path from {session_file}, skipping commit", file=sys.stderr)
177
191
 
178
192
  except asyncio.CancelledError:
179
193
  # Task was cancelled because a newer change was detected
@@ -221,12 +235,21 @@ class DialogueWatcher:
221
235
  """
222
236
  try:
223
237
  project_dir_name = session_file.parent.name
238
+ print(f"[MCP Watcher] Extracting project path from: {project_dir_name}", file=sys.stderr)
239
+
224
240
  if project_dir_name.startswith('-'):
225
241
  # Convert back to path: -Users-foo-bar -> /Users/foo/bar
226
242
  path_str = '/' + project_dir_name[1:].replace('-', '/')
227
243
  candidate_path = Path(path_str)
244
+ print(f"[MCP Watcher] Candidate project path: {candidate_path}", file=sys.stderr)
245
+
228
246
  if candidate_path.exists():
247
+ print(f"[MCP Watcher] Project path exists: {candidate_path}", file=sys.stderr)
229
248
  return candidate_path
249
+ else:
250
+ print(f"[MCP Watcher] WARNING: Project path does not exist: {candidate_path}", file=sys.stderr)
251
+ else:
252
+ print(f"[MCP Watcher] WARNING: Directory name doesn't start with '-': {project_dir_name}", file=sys.stderr)
230
253
  except Exception as e:
231
254
  print(f"[MCP Watcher] Error extracting project path: {e}", file=sys.stderr)
232
255
  return None