nexus-linux-assistant 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 (54) hide show
  1. nexus_linux_assistant-0.1.0/.env.example +16 -0
  2. nexus_linux_assistant-0.1.0/.github/workflows/ci.yml +77 -0
  3. nexus_linux_assistant-0.1.0/.github/workflows/release.yml +44 -0
  4. nexus_linux_assistant-0.1.0/.gitignore +29 -0
  5. nexus_linux_assistant-0.1.0/PKG-INFO +920 -0
  6. nexus_linux_assistant-0.1.0/README.md +874 -0
  7. nexus_linux_assistant-0.1.0/docs/API_KEY_ROTATION_GUIDE.md +217 -0
  8. nexus_linux_assistant-0.1.0/docs/FUTURE_SCOPE.md +149 -0
  9. nexus_linux_assistant-0.1.0/docs/GROQ_GPT_FALLBACK.md +203 -0
  10. nexus_linux_assistant-0.1.0/docs/MEMORY_PERSISTENCE_GUIDE.md +167 -0
  11. nexus_linux_assistant-0.1.0/docs/architecture_overview.md +344 -0
  12. nexus_linux_assistant-0.1.0/docs/model_usage_guide.md +439 -0
  13. nexus_linux_assistant-0.1.0/list_models.py +32 -0
  14. nexus_linux_assistant-0.1.0/pyproject.toml +101 -0
  15. nexus_linux_assistant-0.1.0/requirements.txt +18 -0
  16. nexus_linux_assistant-0.1.0/src/jarvis/__init__.py +0 -0
  17. nexus_linux_assistant-0.1.0/src/jarvis/ai/__init__.py +9 -0
  18. nexus_linux_assistant-0.1.0/src/jarvis/ai/command_generator.py +206 -0
  19. nexus_linux_assistant-0.1.0/src/jarvis/ai/decision_engine.py +438 -0
  20. nexus_linux_assistant-0.1.0/src/jarvis/ai/llm_client.py +335 -0
  21. nexus_linux_assistant-0.1.0/src/jarvis/ai/memory_client.py +141 -0
  22. nexus_linux_assistant-0.1.0/src/jarvis/core/__init__.py +4 -0
  23. nexus_linux_assistant-0.1.0/src/jarvis/core/api_key_rotator.py +191 -0
  24. nexus_linux_assistant-0.1.0/src/jarvis/core/audit_logger.py +92 -0
  25. nexus_linux_assistant-0.1.0/src/jarvis/core/config_manager.py +126 -0
  26. nexus_linux_assistant-0.1.0/src/jarvis/core/executor.py +210 -0
  27. nexus_linux_assistant-0.1.0/src/jarvis/core/model_catalog.py +213 -0
  28. nexus_linux_assistant-0.1.0/src/jarvis/core/orchestrator.py +1639 -0
  29. nexus_linux_assistant-0.1.0/src/jarvis/core/persistent_session_manager.py +139 -0
  30. nexus_linux_assistant-0.1.0/src/jarvis/core/security.py +322 -0
  31. nexus_linux_assistant-0.1.0/src/jarvis/core/session_manager.py +330 -0
  32. nexus_linux_assistant-0.1.0/src/jarvis/core/system_detector.py +57 -0
  33. nexus_linux_assistant-0.1.0/src/jarvis/main.py +570 -0
  34. nexus_linux_assistant-0.1.0/src/jarvis/modules/__init__.py +1 -0
  35. nexus_linux_assistant-0.1.0/src/jarvis/modules/browser_manager.py +167 -0
  36. nexus_linux_assistant-0.1.0/src/jarvis/modules/package_manager.py +93 -0
  37. nexus_linux_assistant-0.1.0/src/jarvis/ui/__init__.py +0 -0
  38. nexus_linux_assistant-0.1.0/src/jarvis/ui/console_app.py +1538 -0
  39. nexus_linux_assistant-0.1.0/src/jarvis/ui/onboarding.py +213 -0
  40. nexus_linux_assistant-0.1.0/src/jarvis/utils/io.py +19 -0
  41. nexus_linux_assistant-0.1.0/src/jarvis/utils/syntax_output.py +282 -0
  42. nexus_linux_assistant-0.1.0/tests/conftest.py +109 -0
  43. nexus_linux_assistant-0.1.0/tests/test_audit_logger.py +94 -0
  44. nexus_linux_assistant-0.1.0/tests/test_command_generator.py +165 -0
  45. nexus_linux_assistant-0.1.0/tests/test_config_manager.py +125 -0
  46. nexus_linux_assistant-0.1.0/tests/test_decision_engine.py +120 -0
  47. nexus_linux_assistant-0.1.0/tests/test_executor.py +150 -0
  48. nexus_linux_assistant-0.1.0/tests/test_llm_client.py +98 -0
  49. nexus_linux_assistant-0.1.0/tests/test_model_catalog.py +78 -0
  50. nexus_linux_assistant-0.1.0/tests/test_orchestrator.py +244 -0
  51. nexus_linux_assistant-0.1.0/tests/test_package_manager.py +133 -0
  52. nexus_linux_assistant-0.1.0/tests/test_planner.py +107 -0
  53. nexus_linux_assistant-0.1.0/tests/test_security.py +221 -0
  54. nexus_linux_assistant-0.1.0/tests/test_session_manager.py +204 -0
@@ -0,0 +1,16 @@
1
+ # API Keys
2
+ JARVIS_API_KEY=
3
+ BROWSER_USE_API_KEY=
4
+ JARVIS_MODEL_PROVIDER=
5
+ OPENROUTER_API_KEY=
6
+ GROQ_API_KEY=
7
+ GROQ_GPT_API_KEY=
8
+ SARVAM_API_KEY=
9
+
10
+ # Memory System
11
+ SUPERMEMORY_API_KEY=
12
+
13
+ # Sarvam.ai Translation & Voice
14
+ # Get your API key from https://sarvam.ai
15
+ # Supports: Hindi, Tamil, Telugu, Bengali, Malayalam, Kannada, Gujarati, Marathi, Punjabi
16
+ SARVAM_API_KEY=your_sarvam_api_key_here
@@ -0,0 +1,77 @@
1
+ name: CI
2
+
3
+ on:
4
+ push:
5
+ branches: ["main", "mvp"]
6
+ pull_request:
7
+ branches: ["main", "mvp"]
8
+
9
+ jobs:
10
+ test:
11
+ name: pytest (${{ matrix.python-version }}, ${{ matrix.extras }})
12
+ runs-on: ubuntu-latest
13
+ strategy:
14
+ fail-fast: false
15
+ matrix:
16
+ python-version: ["3.10", "3.11", "3.12"]
17
+ extras: ["dev"]
18
+ include:
19
+ - python-version: "3.11"
20
+ extras: "all,dev"
21
+
22
+ steps:
23
+ - uses: actions/checkout@v4
24
+
25
+ - name: Set up Python ${{ matrix.python-version }}
26
+ uses: actions/setup-python@v5
27
+ with:
28
+ python-version: ${{ matrix.python-version }}
29
+
30
+ - name: Cache pip
31
+ uses: actions/cache@v4
32
+ with:
33
+ path: ~/.cache/pip
34
+ key: ${{ runner.os }}-pip-${{ matrix.python-version }}-${{ hashFiles('pyproject.toml') }}
35
+ restore-keys: |
36
+ ${{ runner.os }}-pip-${{ matrix.python-version }}-
37
+
38
+ - name: Install dependencies
39
+ run: |
40
+ python -m pip install --upgrade pip
41
+ pip install -e ".[${{ matrix.extras }}]"
42
+
43
+ - name: Run tests
44
+ run: pytest --tb=short -q
45
+
46
+ - name: Show coverage (Python 3.11 core only)
47
+ if: matrix.python-version == '3.11' && matrix.extras == 'dev'
48
+ run: |
49
+ pip install pytest-cov
50
+ pytest --cov=src/jarvis --cov-report=term-missing -q
51
+
52
+ lint:
53
+ name: lint & security
54
+ runs-on: ubuntu-latest
55
+ steps:
56
+ - uses: actions/checkout@v4
57
+
58
+ - name: Set up Python
59
+ uses: actions/setup-python@v5
60
+ with:
61
+ python-version: "3.11"
62
+
63
+ - name: Install tools
64
+ run: |
65
+ python -m pip install --upgrade pip
66
+ pip install ruff pip-audit
67
+ pip install -e ".[dev]"
68
+
69
+ - name: Ruff lint
70
+ run: ruff check src/ tests/
71
+
72
+ - name: Ruff format check
73
+ run: ruff format --check src/ tests/
74
+
75
+ - name: Pip audit (security)
76
+ run: pip-audit --strict
77
+ continue-on-error: true
@@ -0,0 +1,44 @@
1
+ # Build sdist + wheel, attach to GitHub Release, publish to PyPI (trusted publishing).
2
+ # Tag: git tag v0.1.0 && git push origin v0.1.0
3
+ #
4
+ # PyPI trusted publisher (one-time): https://docs.pypi.org/trusted-publishers/
5
+ # Create project "nexus-linux-assistant" on PyPI, then add publisher:
6
+ # Owner: Garvit1000, repo: nexus, workflow: release.yml (environment: leave empty unless you add one below).
7
+
8
+ name: Release
9
+
10
+ on:
11
+ push:
12
+ tags:
13
+ - "v*"
14
+
15
+ permissions:
16
+ contents: write
17
+ id-token: write
18
+
19
+ jobs:
20
+ publish:
21
+ runs-on: ubuntu-latest
22
+ steps:
23
+ - uses: actions/checkout@v4
24
+
25
+ - uses: actions/setup-python@v5
26
+ with:
27
+ python-version: "3.11"
28
+
29
+ - name: Install build
30
+ run: pip install --upgrade pip build
31
+
32
+ - name: Build sdist and wheel
33
+ run: python -m build
34
+
35
+ - name: Upload GitHub Release assets
36
+ uses: softprops/action-gh-release@v2
37
+ with:
38
+ files: dist/*
39
+ generate_release_notes: true
40
+
41
+ - name: Publish to PyPI
42
+ uses: pypa/gh-action-pypi-publish@release/v1
43
+ with:
44
+ verbose: true
@@ -0,0 +1,29 @@
1
+ # Python
2
+ __pycache__/
3
+ *.py[cod]
4
+ *$py.class
5
+
6
+ # Environment variables
7
+ .env
8
+
9
+ # Virtual environments
10
+ .venv
11
+ .venv-ci/
12
+ env/
13
+ venv/
14
+ ENV/
15
+ env.bak/
16
+ venv.bak/
17
+
18
+ # Distribution / packaging
19
+ build/
20
+ dist/
21
+ *.egg-info/
22
+
23
+ # IDEs
24
+ .vscode/
25
+ .idea/
26
+
27
+ # OS specific
28
+ .DS_Store
29
+ Thumbs.db