nimcode 0.1.13__tar.gz → 0.1.15__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.
Files changed (47) hide show
  1. {nimcode-0.1.13 → nimcode-0.1.15}/PKG-INFO +1 -1
  2. {nimcode-0.1.13 → nimcode-0.1.15}/setup.py +1 -1
  3. {nimcode-0.1.13 → nimcode-0.1.15}/src/nimcode/cli.py +0 -1
  4. {nimcode-0.1.13 → nimcode-0.1.15}/src/nimcode/stdio_server.py +29 -0
  5. {nimcode-0.1.13 → nimcode-0.1.15}/src/nimcode.egg-info/PKG-INFO +1 -1
  6. {nimcode-0.1.13 → nimcode-0.1.15}/README.md +0 -0
  7. {nimcode-0.1.13 → nimcode-0.1.15}/setup.cfg +0 -0
  8. {nimcode-0.1.13 → nimcode-0.1.15}/src/nimcode/__init__.py +0 -0
  9. {nimcode-0.1.13 → nimcode-0.1.15}/src/nimcode/agent.py +0 -0
  10. {nimcode-0.1.13 → nimcode-0.1.15}/src/nimcode/analytics.py +0 -0
  11. {nimcode-0.1.13 → nimcode-0.1.15}/src/nimcode/config.py +0 -0
  12. {nimcode-0.1.13 → nimcode-0.1.15}/src/nimcode/lenient_parser.py +0 -0
  13. {nimcode-0.1.13 → nimcode-0.1.15}/src/nimcode/mcp_client.py +0 -0
  14. {nimcode-0.1.13 → nimcode-0.1.15}/src/nimcode/memory.py +0 -0
  15. {nimcode-0.1.13 → nimcode-0.1.15}/src/nimcode/nim_client.py +0 -0
  16. {nimcode-0.1.13 → nimcode-0.1.15}/src/nimcode/permissions.py +0 -0
  17. {nimcode-0.1.13 → nimcode-0.1.15}/src/nimcode/plugin_manager.py +0 -0
  18. {nimcode-0.1.13 → nimcode-0.1.15}/src/nimcode/repl.py +0 -0
  19. {nimcode-0.1.13 → nimcode-0.1.15}/src/nimcode/repo_map.py +0 -0
  20. {nimcode-0.1.13 → nimcode-0.1.15}/src/nimcode/secret_scanner.py +0 -0
  21. {nimcode-0.1.13 → nimcode-0.1.15}/src/nimcode/swarm.py +0 -0
  22. {nimcode-0.1.13 → nimcode-0.1.15}/src/nimcode/tools.py +0 -0
  23. {nimcode-0.1.13 → nimcode-0.1.15}/src/nimcode/updater.py +0 -0
  24. {nimcode-0.1.13 → nimcode-0.1.15}/src/nimcode/watcher.py +0 -0
  25. {nimcode-0.1.13 → nimcode-0.1.15}/src/nimcode.egg-info/SOURCES.txt +0 -0
  26. {nimcode-0.1.13 → nimcode-0.1.15}/src/nimcode.egg-info/dependency_links.txt +0 -0
  27. {nimcode-0.1.13 → nimcode-0.1.15}/src/nimcode.egg-info/entry_points.txt +0 -0
  28. {nimcode-0.1.13 → nimcode-0.1.15}/src/nimcode.egg-info/requires.txt +0 -0
  29. {nimcode-0.1.13 → nimcode-0.1.15}/src/nimcode.egg-info/top_level.txt +0 -0
  30. {nimcode-0.1.13 → nimcode-0.1.15}/tests/test_agent.py +0 -0
  31. {nimcode-0.1.13 → nimcode-0.1.15}/tests/test_analytics.py +0 -0
  32. {nimcode-0.1.13 → nimcode-0.1.15}/tests/test_cli.py +0 -0
  33. {nimcode-0.1.13 → nimcode-0.1.15}/tests/test_config.py +0 -0
  34. {nimcode-0.1.13 → nimcode-0.1.15}/tests/test_lenient_parser.py +0 -0
  35. {nimcode-0.1.13 → nimcode-0.1.15}/tests/test_mcp_client.py +0 -0
  36. {nimcode-0.1.13 → nimcode-0.1.15}/tests/test_memory.py +0 -0
  37. {nimcode-0.1.13 → nimcode-0.1.15}/tests/test_nim_client.py +0 -0
  38. {nimcode-0.1.13 → nimcode-0.1.15}/tests/test_nimcoderules.py +0 -0
  39. {nimcode-0.1.13 → nimcode-0.1.15}/tests/test_permissions.py +0 -0
  40. {nimcode-0.1.13 → nimcode-0.1.15}/tests/test_plugin_manager.py +0 -0
  41. {nimcode-0.1.13 → nimcode-0.1.15}/tests/test_repl.py +0 -0
  42. {nimcode-0.1.13 → nimcode-0.1.15}/tests/test_repl_extra.py +0 -0
  43. {nimcode-0.1.13 → nimcode-0.1.15}/tests/test_repl_trust.py +0 -0
  44. {nimcode-0.1.13 → nimcode-0.1.15}/tests/test_repo_map.py +0 -0
  45. {nimcode-0.1.13 → nimcode-0.1.15}/tests/test_secret_scanner.py +0 -0
  46. {nimcode-0.1.13 → nimcode-0.1.15}/tests/test_tools.py +0 -0
  47. {nimcode-0.1.13 → nimcode-0.1.15}/tests/test_updater.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: nimcode
3
- Version: 0.1.13
3
+ Version: 0.1.15
4
4
  Summary: A standalone, robust coding agent for NVIDIA NIM models.
5
5
  Author: Autonomous Agent
6
6
  Requires-Dist: httpx>=0.27.0
@@ -2,7 +2,7 @@ from setuptools import setup, find_packages
2
2
 
3
3
  setup(
4
4
  name="nimcode",
5
- version="0.1.13",
5
+ version="0.1.15",
6
6
  packages=find_packages(where="src"),
7
7
  package_dir={"": "src"},
8
8
  install_requires=[
@@ -101,7 +101,6 @@ def main():
101
101
  if not model and not args.stdio:
102
102
  from rich.prompt import Prompt
103
103
  from .nim_client import NimClient
104
- import asyncio
105
104
  client = NimClient(api_key=final_key)
106
105
  console.print("[yellow]Fetching available models from NVIDIA NIM...[/yellow]")
107
106
  models = asyncio.run(client.get_available_models())
@@ -59,6 +59,35 @@ class StdioServer:
59
59
 
60
60
  self.agent._stream_response = stdio_stream_response
61
61
 
62
+ # Override rich.console.Console.print to capture slash command outputs and general prints
63
+ from rich.console import Console
64
+ original_print = Console.print
65
+
66
+ def patched_print(console_self, *objects, **kwargs):
67
+ # Try to extract raw string from objects
68
+ text_parts = []
69
+ for obj in objects:
70
+ if isinstance(obj, str):
71
+ text_parts.append(obj)
72
+ elif hasattr(obj, "__rich_console__") or hasattr(obj, "__rich_measure__"):
73
+ # For complex rich objects (like Markdown), we could render it to text
74
+ try:
75
+ with console_self.capture() as capture:
76
+ original_print(console_self, obj, **kwargs)
77
+ text_parts.append(capture.get())
78
+ except Exception:
79
+ text_parts.append(str(obj))
80
+ else:
81
+ text_parts.append(str(obj))
82
+
83
+ if text_parts:
84
+ content = " ".join(text_parts)
85
+ # Strip excessive ANSI codes if capture includes them, but we want plain text or markdown
86
+ # For simplicity, just send it to the UI
87
+ self.send_message({"type": "info", "content": content})
88
+
89
+ Console.print = patched_print
90
+
62
91
  def send_message(self, message: dict):
63
92
  """Send a JSON message to original stdout."""
64
93
  try:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: nimcode
3
- Version: 0.1.13
3
+ Version: 0.1.15
4
4
  Summary: A standalone, robust coding agent for NVIDIA NIM models.
5
5
  Author: Autonomous Agent
6
6
  Requires-Dist: httpx>=0.27.0
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes