nautex 0.1.0__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 (49) hide show
  1. nautex-0.1.0/LICENSE +21 -0
  2. nautex-0.1.0/PKG-INFO +143 -0
  3. nautex-0.1.0/README.md +105 -0
  4. nautex-0.1.0/pyproject.toml +107 -0
  5. nautex-0.1.0/setup.cfg +4 -0
  6. nautex-0.1.0/src/nautex/__init__.py +4 -0
  7. nautex-0.1.0/src/nautex/api/__init__.py +28 -0
  8. nautex-0.1.0/src/nautex/api/api_models.py +415 -0
  9. nautex-0.1.0/src/nautex/api/client.py +821 -0
  10. nautex-0.1.0/src/nautex/api/scope_context_model.py +232 -0
  11. nautex-0.1.0/src/nautex/api/test_client.py +358 -0
  12. nautex-0.1.0/src/nautex/cli.py +162 -0
  13. nautex-0.1.0/src/nautex/models/__init__.py +0 -0
  14. nautex-0.1.0/src/nautex/models/config.py +70 -0
  15. nautex-0.1.0/src/nautex/models/integration_status.py +88 -0
  16. nautex-0.1.0/src/nautex/models/mcp.py +244 -0
  17. nautex-0.1.0/src/nautex/models/plan_context.py +32 -0
  18. nautex-0.1.0/src/nautex/rules/cursor/nautex_workflow.mdc +221 -0
  19. nautex-0.1.0/src/nautex/services/__init__.py +21 -0
  20. nautex-0.1.0/src/nautex/services/agent_rules_service.py +188 -0
  21. nautex-0.1.0/src/nautex/services/config_service.py +257 -0
  22. nautex-0.1.0/src/nautex/services/document_service.py +159 -0
  23. nautex-0.1.0/src/nautex/services/integration_status_service.py +166 -0
  24. nautex-0.1.0/src/nautex/services/mcp_config_service.py +255 -0
  25. nautex-0.1.0/src/nautex/services/mcp_service.py +433 -0
  26. nautex-0.1.0/src/nautex/services/nautex_api_service.py +291 -0
  27. nautex-0.1.0/src/nautex/services/plan_context_service.py +129 -0
  28. nautex-0.1.0/src/nautex/services/ui_service.py +77 -0
  29. nautex-0.1.0/src/nautex/tui/__init__.py +0 -0
  30. nautex-0.1.0/src/nautex/tui/screens/__init__.py +5 -0
  31. nautex-0.1.0/src/nautex/tui/screens/setup_screen.py +507 -0
  32. nautex-0.1.0/src/nautex/tui/styles.py +25 -0
  33. nautex-0.1.0/src/nautex/tui/widgets/__init__.py +22 -0
  34. nautex-0.1.0/src/nautex/tui/widgets/config_dialogs.py +294 -0
  35. nautex-0.1.0/src/nautex/tui/widgets/dialogs.py +75 -0
  36. nautex-0.1.0/src/nautex/tui/widgets/inputs.py +245 -0
  37. nautex-0.1.0/src/nautex/tui/widgets/integration.py +74 -0
  38. nautex-0.1.0/src/nautex/tui/widgets/integration_status.py +100 -0
  39. nautex-0.1.0/src/nautex/tui/widgets/loadable_list.py +316 -0
  40. nautex-0.1.0/src/nautex/tui/widgets/plan_context.py +49 -0
  41. nautex-0.1.0/src/nautex/tui/widgets/system_info.py +143 -0
  42. nautex-0.1.0/src/nautex/tui/widgets/views.py +44 -0
  43. nautex-0.1.0/src/nautex/utils.py +11 -0
  44. nautex-0.1.0/src/nautex.egg-info/PKG-INFO +143 -0
  45. nautex-0.1.0/src/nautex.egg-info/SOURCES.txt +47 -0
  46. nautex-0.1.0/src/nautex.egg-info/dependency_links.txt +1 -0
  47. nautex-0.1.0/src/nautex.egg-info/entry_points.txt +2 -0
  48. nautex-0.1.0/src/nautex.egg-info/requires.txt +14 -0
  49. nautex-0.1.0/src/nautex.egg-info/top_level.txt +1 -0
nautex-0.1.0/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2025 Nautex AI Inc
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.
nautex-0.1.0/PKG-INFO ADDED
@@ -0,0 +1,143 @@
1
+ Metadata-Version: 2.4
2
+ Name: nautex
3
+ Version: 0.1.0
4
+ Summary: Command-line interface for Nautex.ai platform MCP integration for guiding coding agents by software requirements specifications
5
+ Author-email: Ivan Makarov <ivan@nautex.ai>
6
+ License-Expression: MIT
7
+ Project-URL: Homepage, https://github.com/hmldns/nautex
8
+ Project-URL: Repository, https://github.com/hmldns/nautex
9
+ Project-URL: Documentation, https://github.com/hmldns/nautex#readme
10
+ Project-URL: Bug Reports, https://github.com/hmldns/nautex/issues
11
+ Classifier: Development Status :: 4 - Beta
12
+ Classifier: Intended Audience :: Developers
13
+ Classifier: Environment :: Console
14
+ Classifier: Programming Language :: Python :: 3.10
15
+ Classifier: Programming Language :: Python :: 3.11
16
+ Classifier: Programming Language :: Python :: 3.12
17
+ Classifier: Topic :: Software Development :: Code Generators
18
+ Classifier: Topic :: Utilities
19
+ Classifier: Operating System :: Microsoft :: Windows
20
+ Classifier: Operating System :: POSIX
21
+ Requires-Python: >=3.10
22
+ Description-Content-Type: text/markdown
23
+ License-File: LICENSE
24
+ Requires-Dist: pydantic<3.0.0,>=2.0.0
25
+ Requires-Dist: pydantic-settings<3.0.0,>=2.0.0
26
+ Requires-Dist: aiohttp<4.0.0,>=3.9.0
27
+ Requires-Dist: textual<1.0.0,>=0.50.0
28
+ Requires-Dist: fastmcp>=2.8.1
29
+ Requires-Dist: python-dotenv<2.0.0,>=1.0.0
30
+ Provides-Extra: dev
31
+ Requires-Dist: flake8>=6.0.0; extra == "dev"
32
+ Requires-Dist: mypy>=1.5.0; extra == "dev"
33
+ Requires-Dist: black>=23.0.0; extra == "dev"
34
+ Requires-Dist: isort>=5.12.0; extra == "dev"
35
+ Requires-Dist: build>=0.10.0; extra == "dev"
36
+ Requires-Dist: twine>=4.0.0; extra == "dev"
37
+ Dynamic: license-file
38
+
39
+ # pre-release todo list
40
+
41
+ - [ ] test publishing
42
+ - [ ] refine publishing
43
+ - [ ] check how UV work
44
+ -
45
+ - [ ] create makefile
46
+ - [ ] test on linux: CLI + Cursor
47
+ - [ ] test on mac
48
+ - [ ] test on windows
49
+
50
+ - [ ] manage rules population
51
+ - [ ] manage rule mcp config population
52
+
53
+ - [ ] cleanup UI
54
+ - [ ] refine status page
55
+ - [ ] refine status message to MCP tool
56
+ - [ ] update actual link for requesting api keys
57
+ - [ ] make sure auth will work toward project line
58
+ - [ ] rename project: Your First Project
59
+ - [ ] from implementation plan list add link for manual on GH of how to create good plan
60
+ - [ ] step by step screenshots
61
+ - [ ] recommendations and tricks
62
+
63
+
64
+ - [ ] refine readme
65
+ - [ ] now it works graphics
66
+ - [ ] platform screenshots --> separate readme files
67
+ - [ ] Put MIT license
68
+ - [ ] quick start manual
69
+ - [ ] contribution guide
70
+ - [ ] claude code / gemini / codex / windsurf reference
71
+ - [ ] create account from scratch workflow
72
+ -
73
+
74
+
75
+ # Nautex CLI
76
+
77
+ Command-line interface for integrating AI coding agents with the Nautex.ai platform.
78
+
79
+ ## Overview
80
+
81
+ Nautex CLI provides a bridge between AI-powered IDEs (like Cursor and Windsurf) and the Nautex.ai task and requirements management platform through the Model Context Protocol (MCP).
82
+
83
+ ## Features
84
+
85
+ - **Interactive Setup**: TUI-based configuration for easy onboarding
86
+ - **MCP Integration**: FastMCP server for seamless AI agent communication
87
+ - **Task Management**: Retrieve, update, and manage tasks from Nautex.ai
88
+ - **Cross-Platform**: Works on macOS, Linux, and Windows
89
+
90
+ ## Installation
91
+
92
+ ```bash
93
+ pip install nautex-cli
94
+ ```
95
+
96
+ ## Quick Start
97
+
98
+ 1. **Setup**: Configure your connection to Nautex.ai
99
+ ```bash
100
+ nautex setup
101
+ ```
102
+
103
+ 2. **Check Status**: View your current configuration
104
+ ```bash
105
+ nautex status
106
+ ```
107
+
108
+ 3. **Run as MCP Server**: For AI agent integration
109
+ ```bash
110
+ nautex mcp
111
+ ```
112
+
113
+ ## Requirements
114
+
115
+ - Python 3.10+
116
+ - Nautex.ai API token
117
+
118
+ ## Development
119
+
120
+ Install in development mode:
121
+
122
+ ```bash
123
+ make install-dev
124
+ ```
125
+
126
+ Run linters and formatters:
127
+
128
+ ```bash
129
+ make lint
130
+ make format
131
+ ```
132
+
133
+ ## License
134
+
135
+ MIT License - see LICENSE file for details.
136
+
137
+ ## Contributing
138
+
139
+ This is an open-source project. Contributions are welcome!
140
+
141
+ ## Support
142
+
143
+ For issues and questions, please visit our [GitHub repository](https://github.com/nautex-ai/nautex-cli).
nautex-0.1.0/README.md ADDED
@@ -0,0 +1,105 @@
1
+ # pre-release todo list
2
+
3
+ - [ ] test publishing
4
+ - [ ] refine publishing
5
+ - [ ] check how UV work
6
+ -
7
+ - [ ] create makefile
8
+ - [ ] test on linux: CLI + Cursor
9
+ - [ ] test on mac
10
+ - [ ] test on windows
11
+
12
+ - [ ] manage rules population
13
+ - [ ] manage rule mcp config population
14
+
15
+ - [ ] cleanup UI
16
+ - [ ] refine status page
17
+ - [ ] refine status message to MCP tool
18
+ - [ ] update actual link for requesting api keys
19
+ - [ ] make sure auth will work toward project line
20
+ - [ ] rename project: Your First Project
21
+ - [ ] from implementation plan list add link for manual on GH of how to create good plan
22
+ - [ ] step by step screenshots
23
+ - [ ] recommendations and tricks
24
+
25
+
26
+ - [ ] refine readme
27
+ - [ ] now it works graphics
28
+ - [ ] platform screenshots --> separate readme files
29
+ - [ ] Put MIT license
30
+ - [ ] quick start manual
31
+ - [ ] contribution guide
32
+ - [ ] claude code / gemini / codex / windsurf reference
33
+ - [ ] create account from scratch workflow
34
+ -
35
+
36
+
37
+ # Nautex CLI
38
+
39
+ Command-line interface for integrating AI coding agents with the Nautex.ai platform.
40
+
41
+ ## Overview
42
+
43
+ Nautex CLI provides a bridge between AI-powered IDEs (like Cursor and Windsurf) and the Nautex.ai task and requirements management platform through the Model Context Protocol (MCP).
44
+
45
+ ## Features
46
+
47
+ - **Interactive Setup**: TUI-based configuration for easy onboarding
48
+ - **MCP Integration**: FastMCP server for seamless AI agent communication
49
+ - **Task Management**: Retrieve, update, and manage tasks from Nautex.ai
50
+ - **Cross-Platform**: Works on macOS, Linux, and Windows
51
+
52
+ ## Installation
53
+
54
+ ```bash
55
+ pip install nautex-cli
56
+ ```
57
+
58
+ ## Quick Start
59
+
60
+ 1. **Setup**: Configure your connection to Nautex.ai
61
+ ```bash
62
+ nautex setup
63
+ ```
64
+
65
+ 2. **Check Status**: View your current configuration
66
+ ```bash
67
+ nautex status
68
+ ```
69
+
70
+ 3. **Run as MCP Server**: For AI agent integration
71
+ ```bash
72
+ nautex mcp
73
+ ```
74
+
75
+ ## Requirements
76
+
77
+ - Python 3.10+
78
+ - Nautex.ai API token
79
+
80
+ ## Development
81
+
82
+ Install in development mode:
83
+
84
+ ```bash
85
+ make install-dev
86
+ ```
87
+
88
+ Run linters and formatters:
89
+
90
+ ```bash
91
+ make lint
92
+ make format
93
+ ```
94
+
95
+ ## License
96
+
97
+ MIT License - see LICENSE file for details.
98
+
99
+ ## Contributing
100
+
101
+ This is an open-source project. Contributions are welcome!
102
+
103
+ ## Support
104
+
105
+ For issues and questions, please visit our [GitHub repository](https://github.com/nautex-ai/nautex-cli).
@@ -0,0 +1,107 @@
1
+ [build-system]
2
+ requires = ["setuptools>=64.0", "wheel"]
3
+ build-backend = "setuptools.build_meta"
4
+
5
+ [project]
6
+ name = "nautex"
7
+ version = "0.1.0"
8
+ description = "Command-line interface for Nautex.ai platform MCP integration for guiding coding agents by software requirements specifications"
9
+ readme = "README.md"
10
+ requires-python = ">=3.10"
11
+ license = "MIT"
12
+ authors = [
13
+ {name = "Ivan Makarov", email = "ivan@nautex.ai"}
14
+ ]
15
+ classifiers = [
16
+ "Development Status :: 4 - Beta",
17
+ "Intended Audience :: Developers",
18
+ "Environment :: Console",
19
+ "Programming Language :: Python :: 3.10",
20
+ "Programming Language :: Python :: 3.11",
21
+ "Programming Language :: Python :: 3.12",
22
+ "Topic :: Software Development :: Code Generators",
23
+ "Topic :: Utilities",
24
+ "Operating System :: Microsoft :: Windows",
25
+ "Operating System :: POSIX"
26
+ ]
27
+
28
+ dependencies = [
29
+ "pydantic>=2.0.0,<3.0.0",
30
+ "pydantic-settings>=2.0.0,<3.0.0",
31
+ "aiohttp>=3.9.0,<4.0.0",
32
+ "textual>=0.50.0,<1.0.0",
33
+ "fastmcp>=2.8.1",
34
+ "python-dotenv>=1.0.0,<2.0.0",
35
+ ]
36
+
37
+ [project.optional-dependencies]
38
+ dev = [
39
+ "flake8>=6.0.0",
40
+ "mypy>=1.5.0",
41
+ "black>=23.0.0",
42
+ "isort>=5.12.0",
43
+ "build>=0.10.0",
44
+ "twine>=4.0.0",
45
+ ]
46
+
47
+ [project.scripts]
48
+ nautex = "nautex.cli:main"
49
+
50
+ [project.urls]
51
+ Homepage = "https://github.com/hmldns/nautex"
52
+ Repository = "https://github.com/hmldns/nautex"
53
+ Documentation = "https://github.com/hmldns/nautex#readme"
54
+ "Bug Reports" = "https://github.com/hmldns/nautex/issues"
55
+
56
+ [tool.setuptools.packages.find]
57
+ where = ["src"]
58
+
59
+ [tool.setuptools.package-dir]
60
+ "" = "src"
61
+
62
+ [tool.setuptools.package-data]
63
+ nautex = ["rules/**/*"]
64
+
65
+
66
+ [tool.black]
67
+ line-length = 88
68
+ target-version = ['py310']
69
+ include = '\.pyi?$'
70
+ extend-exclude = '''
71
+ /(
72
+ # directories
73
+ \.eggs
74
+ | \.git
75
+ | \.hg
76
+ | \.mypy_cache
77
+ | \.tox
78
+ | \.venv
79
+ | build
80
+ | dist
81
+ )/
82
+ '''
83
+
84
+ [tool.isort]
85
+ profile = "black"
86
+ multi_line_output = 3
87
+ line_length = 88
88
+ known_first_party = ["nautex"]
89
+
90
+ [tool.mypy]
91
+ python_version = "3.10"
92
+ warn_return_any = true
93
+ warn_unused_configs = true
94
+ disallow_untyped_defs = true
95
+ disallow_incomplete_defs = true
96
+ check_untyped_defs = true
97
+ disallow_untyped_decorators = true
98
+ no_implicit_optional = true
99
+ warn_redundant_casts = true
100
+ warn_unused_ignores = true
101
+ warn_no_return = true
102
+ warn_unreachable = true
103
+ strict_equality = true
104
+
105
+ [[tool.mypy.overrides]]
106
+ module = "textual.*"
107
+ ignore_missing_imports = true
nautex-0.1.0/setup.cfg ADDED
@@ -0,0 +1,4 @@
1
+ [egg_info]
2
+ tag_build =
3
+ tag_date = 0
4
+
@@ -0,0 +1,4 @@
1
+ """Nautex CLI package."""
2
+
3
+ __version__ = "0.1.0"
4
+
@@ -0,0 +1,28 @@
1
+ """Nautex API module with client factory for production and test modes."""
2
+
3
+ from .client import NautexAPIClient, NautexAPIError
4
+ from .test_client import NautexTestAPIClient
5
+
6
+
7
+ def create_api_client(base_url: str = "https://api.nautex.ai", test_mode: bool = True):
8
+ """Factory function to create the appropriate API client.
9
+
10
+ Args:
11
+ base_url: Base URL for the API (ignored in test mode)
12
+ test_mode: If True, returns test client with dummy responses
13
+
14
+ Returns:
15
+ NautexTestAPIClient if test_mode=True, otherwise NautexAPIClient
16
+ """
17
+ if test_mode:
18
+ return NautexTestAPIClient(base_url)
19
+ else:
20
+ return NautexAPIClient(base_url)
21
+
22
+
23
+ __all__ = [
24
+ 'NautexAPIClient',
25
+ 'NautexTestAPIClient',
26
+ 'NautexAPIError',
27
+ 'create_api_client'
28
+ ]