jarvis-agent-cli 0.10.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 (105) hide show
  1. jarvis_agent_cli-0.10.0/PKG-INFO +170 -0
  2. jarvis_agent_cli-0.10.0/README.md +126 -0
  3. jarvis_agent_cli-0.10.0/pyproject.toml +57 -0
  4. jarvis_agent_cli-0.10.0/setup.cfg +4 -0
  5. jarvis_agent_cli-0.10.0/src/jarvis_agent_cli.egg-info/PKG-INFO +170 -0
  6. jarvis_agent_cli-0.10.0/src/jarvis_agent_cli.egg-info/SOURCES.txt +103 -0
  7. jarvis_agent_cli-0.10.0/src/jarvis_agent_cli.egg-info/dependency_links.txt +1 -0
  8. jarvis_agent_cli-0.10.0/src/jarvis_agent_cli.egg-info/entry_points.txt +2 -0
  9. jarvis_agent_cli-0.10.0/src/jarvis_agent_cli.egg-info/requires.txt +28 -0
  10. jarvis_agent_cli-0.10.0/src/jarvis_agent_cli.egg-info/top_level.txt +1 -0
  11. jarvis_agent_cli-0.10.0/src/jarvis_cli/__init__.py +3 -0
  12. jarvis_agent_cli-0.10.0/src/jarvis_cli/__main__.py +3 -0
  13. jarvis_agent_cli-0.10.0/src/jarvis_cli/attachments.py +191 -0
  14. jarvis_agent_cli-0.10.0/src/jarvis_cli/autonomous_sdk.py +561 -0
  15. jarvis_agent_cli-0.10.0/src/jarvis_cli/background_processes.py +110 -0
  16. jarvis_agent_cli-0.10.0/src/jarvis_cli/benchmark_fixtures.py +151 -0
  17. jarvis_agent_cli-0.10.0/src/jarvis_cli/browser_agent.py +302 -0
  18. jarvis_agent_cli-0.10.0/src/jarvis_cli/change_review.py +119 -0
  19. jarvis_agent_cli-0.10.0/src/jarvis_cli/client.py +263 -0
  20. jarvis_agent_cli-0.10.0/src/jarvis_cli/cloud_isolation.py +21 -0
  21. jarvis_agent_cli-0.10.0/src/jarvis_cli/dashboard.py +108 -0
  22. jarvis_agent_cli-0.10.0/src/jarvis_cli/efficiency_runtime.py +544 -0
  23. jarvis_agent_cli-0.10.0/src/jarvis_cli/escalation_v07.py +129 -0
  24. jarvis_agent_cli-0.10.0/src/jarvis_cli/evals.py +229 -0
  25. jarvis_agent_cli-0.10.0/src/jarvis_cli/evidence_v07.py +134 -0
  26. jarvis_agent_cli-0.10.0/src/jarvis_cli/execution_evidence_runtime.py +42 -0
  27. jarvis_agent_cli-0.10.0/src/jarvis_cli/execution_hardening.py +267 -0
  28. jarvis_agent_cli-0.10.0/src/jarvis_cli/features.py +86 -0
  29. jarvis_agent_cli-0.10.0/src/jarvis_cli/hooks.py +199 -0
  30. jarvis_agent_cli-0.10.0/src/jarvis_cli/ide_protocol.py +147 -0
  31. jarvis_agent_cli-0.10.0/src/jarvis_cli/impact_v07.py +101 -0
  32. jarvis_agent_cli-0.10.0/src/jarvis_cli/instructions.py +127 -0
  33. jarvis_agent_cli-0.10.0/src/jarvis_cli/job_worker.py +3 -0
  34. jarvis_agent_cli-0.10.0/src/jarvis_cli/jobs.py +483 -0
  35. jarvis_agent_cli-0.10.0/src/jarvis_cli/local_agent.py +1354 -0
  36. jarvis_agent_cli-0.10.0/src/jarvis_cli/lsp_full.py +253 -0
  37. jarvis_agent_cli-0.10.0/src/jarvis_cli/main.py +1235 -0
  38. jarvis_agent_cli-0.10.0/src/jarvis_cli/mcp.py +334 -0
  39. jarvis_agent_cli-0.10.0/src/jarvis_cli/mcp_policy_runtime.py +70 -0
  40. jarvis_agent_cli-0.10.0/src/jarvis_cli/mcp_registry.py +54 -0
  41. jarvis_agent_cli-0.10.0/src/jarvis_cli/observability.py +236 -0
  42. jarvis_agent_cli-0.10.0/src/jarvis_cli/patch_guard_v07.py +274 -0
  43. jarvis_agent_cli-0.10.0/src/jarvis_cli/plan.py +76 -0
  44. jarvis_agent_cli-0.10.0/src/jarvis_cli/plugin_commands.py +74 -0
  45. jarvis_agent_cli-0.10.0/src/jarvis_cli/plugin_runtime.py +104 -0
  46. jarvis_agent_cli-0.10.0/src/jarvis_cli/plugins.py +165 -0
  47. jarvis_agent_cli-0.10.0/src/jarvis_cli/process_env.py +69 -0
  48. jarvis_agent_cli-0.10.0/src/jarvis_cli/process_policy_runtime.py +150 -0
  49. jarvis_agent_cli-0.10.0/src/jarvis_cli/profiles.py +137 -0
  50. jarvis_agent_cli-0.10.0/src/jarvis_cli/proof_runtime.py +462 -0
  51. jarvis_agent_cli-0.10.0/src/jarvis_cli/protocol.py +66 -0
  52. jarvis_agent_cli-0.10.0/src/jarvis_cli/provider_messages.py +158 -0
  53. jarvis_agent_cli-0.10.0/src/jarvis_cli/quality_runtime.py +477 -0
  54. jarvis_agent_cli-0.10.0/src/jarvis_cli/real_repo_benchmark.py +347 -0
  55. jarvis_agent_cli-0.10.0/src/jarvis_cli/render.py +242 -0
  56. jarvis_agent_cli-0.10.0/src/jarvis_cli/repository_graph.py +532 -0
  57. jarvis_agent_cli-0.10.0/src/jarvis_cli/repository_map.py +175 -0
  58. jarvis_agent_cli-0.10.0/src/jarvis_cli/routing_v07.py +117 -0
  59. jarvis_agent_cli-0.10.0/src/jarvis_cli/runtime_hooks.py +87 -0
  60. jarvis_agent_cli-0.10.0/src/jarvis_cli/runtime_platform.py +69 -0
  61. jarvis_agent_cli-0.10.0/src/jarvis_cli/sandbox.py +192 -0
  62. jarvis_agent_cli-0.10.0/src/jarvis_cli/sdk.py +608 -0
  63. jarvis_agent_cli-0.10.0/src/jarvis_cli/secrets.py +33 -0
  64. jarvis_agent_cli-0.10.0/src/jarvis_cli/sessions.py +356 -0
  65. jarvis_agent_cli-0.10.0/src/jarvis_cli/skills.py +155 -0
  66. jarvis_agent_cli-0.10.0/src/jarvis_cli/speculation_v07.py +144 -0
  67. jarvis_agent_cli-0.10.0/src/jarvis_cli/team_runtime.py +420 -0
  68. jarvis_agent_cli-0.10.0/src/jarvis_cli/tui.py +121 -0
  69. jarvis_agent_cli-0.10.0/src/jarvis_cli/update.py +73 -0
  70. jarvis_agent_cli-0.10.0/src/jarvis_cli/v05_main.py +281 -0
  71. jarvis_agent_cli-0.10.0/src/jarvis_cli/v061_main.py +61 -0
  72. jarvis_agent_cli-0.10.0/src/jarvis_cli/v06_main.py +426 -0
  73. jarvis_agent_cli-0.10.0/src/jarvis_cli/v071_main.py +71 -0
  74. jarvis_agent_cli-0.10.0/src/jarvis_cli/v07_main.py +88 -0
  75. jarvis_agent_cli-0.10.0/src/jarvis_cli/v08_main.py +309 -0
  76. jarvis_agent_cli-0.10.0/src/jarvis_cli/web.py +141 -0
  77. jarvis_agent_cli-0.10.0/src/jarvis_cli/workspace_trust.py +166 -0
  78. jarvis_agent_cli-0.10.0/tests/test_background_processes.py +27 -0
  79. jarvis_agent_cli-0.10.0/tests/test_cli.py +1187 -0
  80. jarvis_agent_cli-0.10.0/tests/test_cloud_isolation.py +78 -0
  81. jarvis_agent_cli-0.10.0/tests/test_execution_hardening.py +100 -0
  82. jarvis_agent_cli-0.10.0/tests/test_features.py +83 -0
  83. jarvis_agent_cli-0.10.0/tests/test_ide_protocol.py +27 -0
  84. jarvis_agent_cli-0.10.0/tests/test_local_agent.py +309 -0
  85. jarvis_agent_cli-0.10.0/tests/test_proof_runtime_redaction.py +21 -0
  86. jarvis_agent_cli-0.10.0/tests/test_quality_runtime.py +90 -0
  87. jarvis_agent_cli-0.10.0/tests/test_real_repo_benchmark.py +126 -0
  88. jarvis_agent_cli-0.10.0/tests/test_runtime_hardening.py +173 -0
  89. jarvis_agent_cli-0.10.0/tests/test_scripts.py +42 -0
  90. jarvis_agent_cli-0.10.0/tests/test_sdk_exports.py +5 -0
  91. jarvis_agent_cli-0.10.0/tests/test_v04_adaptive_integration.py +100 -0
  92. jarvis_agent_cli-0.10.0/tests/test_v05_benchmark_fixture.py +18 -0
  93. jarvis_agent_cli-0.10.0/tests/test_v05_runtime_hooks.py +74 -0
  94. jarvis_agent_cli-0.10.0/tests/test_v05_world_class.py +166 -0
  95. jarvis_agent_cli-0.10.0/tests/test_v06_platform.py +113 -0
  96. jarvis_agent_cli-0.10.0/tests/test_v06_release_quality.py +162 -0
  97. jarvis_agent_cli-0.10.0/tests/test_v071_cloud_workspaces.py +166 -0
  98. jarvis_agent_cli-0.10.0/tests/test_v071_post_merge_hardening.py +142 -0
  99. jarvis_agent_cli-0.10.0/tests/test_v07_efficiency.py +99 -0
  100. jarvis_agent_cli-0.10.0/tests/test_v081_release_alignment.py +42 -0
  101. jarvis_agent_cli-0.10.0/tests/test_v081_security_hardening.py +207 -0
  102. jarvis_agent_cli-0.10.0/tests/test_v082_adversarial_security.py +202 -0
  103. jarvis_agent_cli-0.10.0/tests/test_v082_worker_chaos.py +177 -0
  104. jarvis_agent_cli-0.10.0/tests/test_v08_autonomous_runtime.py +314 -0
  105. jarvis_agent_cli-0.10.0/tests/test_world_class.py +108 -0
@@ -0,0 +1,170 @@
1
+ Metadata-Version: 2.4
2
+ Name: jarvis-agent-cli
3
+ Version: 0.10.0
4
+ Summary: Standalone and remote terminal coding agent
5
+ Author: Abdullah Al Rifat
6
+ Project-URL: Homepage, https://github.com/abdullahalrifat/jarvis
7
+ Project-URL: Repository, https://github.com/abdullahalrifat/jarvis
8
+ Project-URL: Issues, https://github.com/abdullahalrifat/jarvis/issues
9
+ Project-URL: Changelog, https://github.com/abdullahalrifat/jarvis/releases
10
+ Keywords: ai,agent,coding-agent,cli,terminal,llm
11
+ Classifier: Development Status :: 4 - Beta
12
+ Classifier: Environment :: Console
13
+ Classifier: Intended Audience :: Developers
14
+ Classifier: Programming Language :: Python :: 3
15
+ Classifier: Programming Language :: Python :: 3 :: Only
16
+ Classifier: Programming Language :: Python :: 3.10
17
+ Classifier: Programming Language :: Python :: 3.11
18
+ Classifier: Programming Language :: Python :: 3.12
19
+ Classifier: Programming Language :: Python :: 3.13
20
+ Classifier: Topic :: Software Development
21
+ Requires-Python: >=3.10
22
+ Description-Content-Type: text/markdown
23
+ Requires-Dist: tomli>=2; python_version < "3.11"
24
+ Requires-Dist: jarvis-agent-core==0.16.1
25
+ Provides-Extra: multimodal
26
+ Requires-Dist: pypdf<7,>=6; extra == "multimodal"
27
+ Requires-Dist: Pillow<13,>=12; extra == "multimodal"
28
+ Provides-Extra: secure
29
+ Requires-Dist: keyring<26,>=25; extra == "secure"
30
+ Provides-Extra: telemetry
31
+ Requires-Dist: opentelemetry-api<2,>=1.36; extra == "telemetry"
32
+ Requires-Dist: opentelemetry-sdk<2,>=1.36; extra == "telemetry"
33
+ Requires-Dist: opentelemetry-exporter-otlp<2,>=1.36; extra == "telemetry"
34
+ Provides-Extra: browser
35
+ Requires-Dist: playwright<2,>=1.55; extra == "browser"
36
+ Provides-Extra: all
37
+ Requires-Dist: pypdf<7,>=6; extra == "all"
38
+ Requires-Dist: Pillow<13,>=12; extra == "all"
39
+ Requires-Dist: keyring<26,>=25; extra == "all"
40
+ Requires-Dist: playwright<2,>=1.55; extra == "all"
41
+ Requires-Dist: opentelemetry-api<2,>=1.36; extra == "all"
42
+ Requires-Dist: opentelemetry-sdk<2,>=1.36; extra == "all"
43
+ Requires-Dist: opentelemetry-exporter-otlp<2,>=1.36; extra == "all"
44
+
45
+ # Jarvis CLI
46
+
47
+ Jarvis is a distributable terminal AI coding agent. Install it from PyPI with pipx or pip, or download a standalone executable from GitHub Releases. Cloning the repository is only required for development.
48
+
49
+ ## Current contract line
50
+
51
+ Jarvis **0.10.0** consumes the provider-neutral Jarvis Core **0.16.1** common-brain contracts. Cloud completion is bound to the exact local run ID and requires real passing test records.
52
+
53
+ Jarvis Core 0.16.1 is published as an immutable PyPI release; the CLI pins that exact release so Jarvis and Core can evolve independently.
54
+
55
+ Jarvis is an open-model-first coding and research agent for local repositories. The CLI is the primary product: normal interactive work does not require the optional Server. Inference can run locally or on a trusted OpenAI-compatible/Anthropic endpoint.
56
+
57
+ ## Install
58
+
59
+ Jarvis is distributed as a normal Python application. You do not need to clone the Git repository to use it.
60
+
61
+ ### Recommended: pipx
62
+
63
+ Python 3.10+ is required. pipx installs Jarvis into an isolated environment and exposes the `jarvis` command globally.
64
+
65
+ ```bash
66
+ python3 -m pip install --user pipx
67
+ python3 -m pipx ensurepath
68
+ pipx install jarvis-agent-cli
69
+ jarvis --version
70
+ ```
71
+
72
+ Upgrade later with:
73
+
74
+ ```bash
75
+ pipx upgrade jarvis-agent-cli
76
+ ```
77
+
78
+ ### Standard pip
79
+
80
+ ```bash
81
+ python3 -m pip install jarvis-agent-cli
82
+ jarvis --version
83
+ ```
84
+
85
+ ### Standalone executable
86
+
87
+ Download the platform-specific `jarvis-*` executable from GitHub Releases. Releases provide Linux amd64, macOS arm64 and Windows amd64 builds, plus SHA256 checksums and build provenance.
88
+
89
+ On Linux/macOS:
90
+
91
+ ```bash
92
+ chmod +x ./jarvis-*
93
+ ./jarvis-* --version
94
+ ```
95
+
96
+ On Windows, run the `.exe` directly from PowerShell or Command Prompt.
97
+
98
+ ### Development install
99
+
100
+ Only contributors working on the source tree need a repository checkout:
101
+
102
+ ```bash
103
+ git clone https://github.com/abdullahalrifat/jarvis.git
104
+ cd jarvis
105
+ python3 -m pip install -e .
106
+ ```
107
+
108
+ Jarvis 0.10.0 consumes `jarvis-agent-core==0.16.1` from PyPI. The dependency is pinned to the exact Core release in `pyproject.toml`.
109
+
110
+ See [docs/install.md](docs/install.md) for the complete distribution and upgrade guide.
111
+
112
+ ## Token-efficient runtime
113
+
114
+ Core 0.16.1 provides provider-neutral primitives for bounded context construction, token/cost estimation, route budgets, adaptive routing and empirical route calibration. Jarvis keeps provider-specific execution policy in the CLI, while shared efficiency and calibration contracts remain reusable across local and remote providers without adding provider SDKs to Core.
115
+
116
+ Context construction can prioritize required task state, recent tool evidence and relevant files under an explicit budget. Route decisions can account for estimated token cost, latency, risk and measured task outcomes.
117
+
118
+ ## Real workload efficiency benchmark
119
+
120
+ Jarvis owns the task-level real workload corpus and evaluation. The benchmark covers CI triage, provider architecture, release readiness, PR review, documentation alignment and efficiency audits. Runtime execution telemetry and route calibration belong to AI Stack; `jarvis-core` supplies the provider-neutral observation and calibration contract.
121
+
122
+ Use the corpus to compare local-only, automatic and cloud-first routes using success, quality, incorrect completions, tool failures, latency, input/output/cache tokens and estimated cost. Runtime evidence should only influence automatic routing after the Core minimum-sample and quality-floor safeguards are satisfied.
123
+
124
+ ## Connect a model
125
+
126
+ ```bash
127
+ export JARVIS_PROVIDER=openai
128
+ export JARVIS_BASE_URL=https://your-endpoint.example/v1
129
+ export JARVIS_MODEL=your-coding-model
130
+ export JARVIS_API_KEY=your-secret
131
+
132
+ jarvis model-doctor
133
+ cd /path/to/repository
134
+ jarvis "review this repository and fix the highest-impact issue"
135
+ ```
136
+
137
+ Named profiles, fallback and automatic measured routing are documented in [docs/models.md](docs/models.md).
138
+
139
+ ## Jarvis versus Server
140
+
141
+ | Need | Use |
142
+ | --- | --- |
143
+ | Local repository work, interactive terminal, local automation | **Jarvis** |
144
+ | Durable cloud tasks, shared queues and external workers | **Server** |
145
+
146
+ Jarvis and Server share stable contracts through `jarvis-agent-core`, while tool execution and storage policy remain separate.
147
+
148
+ ## Implemented runtime
149
+
150
+ The runtime includes bounded repository/Git tools, allowlisted command execution, sandbox/network policy, sessions/checkpoints, proof records, multimodal context, hierarchical instructions/memory, Skills/Hooks, deny-by-default MCP, repository/LSP intelligence, worktrees, plan mode, adaptive context, failure memory, multi-agent execution, heterogeneous routing, browser verification, background jobs/cron, observability and the remote Run/cloud worker protocol.
151
+
152
+ ## Development
153
+
154
+ ```bash
155
+ python -m pip install -e . -r requirements.txt
156
+ black --check --diff src tests
157
+ ruff check src tests --select E9,F63,F7,F82
158
+ pytest -q --cov=. --cov-report=term-missing --cov-fail-under=70
159
+ python -m build
160
+ ```
161
+
162
+ Additional guides:
163
+
164
+ - [Real workload efficiency benchmark](docs/real-workload-efficiency.md)
165
+ - [Operations](docs/operations.md)
166
+ - [Models and routing](docs/models.md)
167
+ - [MCP](docs/mcp.md)
168
+ - [Web search](docs/web-search.md)
169
+ - [v0.8 autonomous runtime](docs/v0.8-autonomous-runtime.md)
170
+ - [World-class readiness](docs/world-class-readiness.md)
@@ -0,0 +1,126 @@
1
+ # Jarvis CLI
2
+
3
+ Jarvis is a distributable terminal AI coding agent. Install it from PyPI with pipx or pip, or download a standalone executable from GitHub Releases. Cloning the repository is only required for development.
4
+
5
+ ## Current contract line
6
+
7
+ Jarvis **0.10.0** consumes the provider-neutral Jarvis Core **0.16.1** common-brain contracts. Cloud completion is bound to the exact local run ID and requires real passing test records.
8
+
9
+ Jarvis Core 0.16.1 is published as an immutable PyPI release; the CLI pins that exact release so Jarvis and Core can evolve independently.
10
+
11
+ Jarvis is an open-model-first coding and research agent for local repositories. The CLI is the primary product: normal interactive work does not require the optional Server. Inference can run locally or on a trusted OpenAI-compatible/Anthropic endpoint.
12
+
13
+ ## Install
14
+
15
+ Jarvis is distributed as a normal Python application. You do not need to clone the Git repository to use it.
16
+
17
+ ### Recommended: pipx
18
+
19
+ Python 3.10+ is required. pipx installs Jarvis into an isolated environment and exposes the `jarvis` command globally.
20
+
21
+ ```bash
22
+ python3 -m pip install --user pipx
23
+ python3 -m pipx ensurepath
24
+ pipx install jarvis-agent-cli
25
+ jarvis --version
26
+ ```
27
+
28
+ Upgrade later with:
29
+
30
+ ```bash
31
+ pipx upgrade jarvis-agent-cli
32
+ ```
33
+
34
+ ### Standard pip
35
+
36
+ ```bash
37
+ python3 -m pip install jarvis-agent-cli
38
+ jarvis --version
39
+ ```
40
+
41
+ ### Standalone executable
42
+
43
+ Download the platform-specific `jarvis-*` executable from GitHub Releases. Releases provide Linux amd64, macOS arm64 and Windows amd64 builds, plus SHA256 checksums and build provenance.
44
+
45
+ On Linux/macOS:
46
+
47
+ ```bash
48
+ chmod +x ./jarvis-*
49
+ ./jarvis-* --version
50
+ ```
51
+
52
+ On Windows, run the `.exe` directly from PowerShell or Command Prompt.
53
+
54
+ ### Development install
55
+
56
+ Only contributors working on the source tree need a repository checkout:
57
+
58
+ ```bash
59
+ git clone https://github.com/abdullahalrifat/jarvis.git
60
+ cd jarvis
61
+ python3 -m pip install -e .
62
+ ```
63
+
64
+ Jarvis 0.10.0 consumes `jarvis-agent-core==0.16.1` from PyPI. The dependency is pinned to the exact Core release in `pyproject.toml`.
65
+
66
+ See [docs/install.md](docs/install.md) for the complete distribution and upgrade guide.
67
+
68
+ ## Token-efficient runtime
69
+
70
+ Core 0.16.1 provides provider-neutral primitives for bounded context construction, token/cost estimation, route budgets, adaptive routing and empirical route calibration. Jarvis keeps provider-specific execution policy in the CLI, while shared efficiency and calibration contracts remain reusable across local and remote providers without adding provider SDKs to Core.
71
+
72
+ Context construction can prioritize required task state, recent tool evidence and relevant files under an explicit budget. Route decisions can account for estimated token cost, latency, risk and measured task outcomes.
73
+
74
+ ## Real workload efficiency benchmark
75
+
76
+ Jarvis owns the task-level real workload corpus and evaluation. The benchmark covers CI triage, provider architecture, release readiness, PR review, documentation alignment and efficiency audits. Runtime execution telemetry and route calibration belong to AI Stack; `jarvis-core` supplies the provider-neutral observation and calibration contract.
77
+
78
+ Use the corpus to compare local-only, automatic and cloud-first routes using success, quality, incorrect completions, tool failures, latency, input/output/cache tokens and estimated cost. Runtime evidence should only influence automatic routing after the Core minimum-sample and quality-floor safeguards are satisfied.
79
+
80
+ ## Connect a model
81
+
82
+ ```bash
83
+ export JARVIS_PROVIDER=openai
84
+ export JARVIS_BASE_URL=https://your-endpoint.example/v1
85
+ export JARVIS_MODEL=your-coding-model
86
+ export JARVIS_API_KEY=your-secret
87
+
88
+ jarvis model-doctor
89
+ cd /path/to/repository
90
+ jarvis "review this repository and fix the highest-impact issue"
91
+ ```
92
+
93
+ Named profiles, fallback and automatic measured routing are documented in [docs/models.md](docs/models.md).
94
+
95
+ ## Jarvis versus Server
96
+
97
+ | Need | Use |
98
+ | --- | --- |
99
+ | Local repository work, interactive terminal, local automation | **Jarvis** |
100
+ | Durable cloud tasks, shared queues and external workers | **Server** |
101
+
102
+ Jarvis and Server share stable contracts through `jarvis-agent-core`, while tool execution and storage policy remain separate.
103
+
104
+ ## Implemented runtime
105
+
106
+ The runtime includes bounded repository/Git tools, allowlisted command execution, sandbox/network policy, sessions/checkpoints, proof records, multimodal context, hierarchical instructions/memory, Skills/Hooks, deny-by-default MCP, repository/LSP intelligence, worktrees, plan mode, adaptive context, failure memory, multi-agent execution, heterogeneous routing, browser verification, background jobs/cron, observability and the remote Run/cloud worker protocol.
107
+
108
+ ## Development
109
+
110
+ ```bash
111
+ python -m pip install -e . -r requirements.txt
112
+ black --check --diff src tests
113
+ ruff check src tests --select E9,F63,F7,F82
114
+ pytest -q --cov=. --cov-report=term-missing --cov-fail-under=70
115
+ python -m build
116
+ ```
117
+
118
+ Additional guides:
119
+
120
+ - [Real workload efficiency benchmark](docs/real-workload-efficiency.md)
121
+ - [Operations](docs/operations.md)
122
+ - [Models and routing](docs/models.md)
123
+ - [MCP](docs/mcp.md)
124
+ - [Web search](docs/web-search.md)
125
+ - [v0.8 autonomous runtime](docs/v0.8-autonomous-runtime.md)
126
+ - [World-class readiness](docs/world-class-readiness.md)
@@ -0,0 +1,57 @@
1
+ [build-system]
2
+ requires = ["setuptools>=68"]
3
+ build-backend = "setuptools.build_meta"
4
+
5
+ [project]
6
+ name = "jarvis-agent-cli"
7
+ description = "Standalone and remote terminal coding agent"
8
+ authors = [{name = "Abdullah Al Rifat"}]
9
+ keywords = ["ai", "agent", "coding-agent", "cli", "terminal", "llm"]
10
+ classifiers = [
11
+ "Development Status :: 4 - Beta",
12
+ "Environment :: Console",
13
+ "Intended Audience :: Developers",
14
+ "Programming Language :: Python :: 3",
15
+ "Programming Language :: Python :: 3 :: Only",
16
+ "Programming Language :: Python :: 3.10",
17
+ "Programming Language :: Python :: 3.11",
18
+ "Programming Language :: Python :: 3.12",
19
+ "Programming Language :: Python :: 3.13",
20
+ "Topic :: Software Development",
21
+ ]
22
+
23
+ readme = "README.md"
24
+ requires-python = ">=3.10"
25
+ dependencies = [
26
+ "tomli>=2; python_version < '3.11'",
27
+ "jarvis-agent-core==0.16.1",
28
+ ]
29
+ dynamic = ["version"]
30
+
31
+ [project.urls]
32
+ Homepage = "https://github.com/abdullahalrifat/jarvis"
33
+ Repository = "https://github.com/abdullahalrifat/jarvis"
34
+ Issues = "https://github.com/abdullahalrifat/jarvis/issues"
35
+ Changelog = "https://github.com/abdullahalrifat/jarvis/releases"
36
+
37
+ [project.optional-dependencies]
38
+ multimodal = ["pypdf>=6,<7", "Pillow>=12,<13"]
39
+ secure = ["keyring>=25,<26"]
40
+ telemetry = ["opentelemetry-api>=1.36,<2", "opentelemetry-sdk>=1.36,<2", "opentelemetry-exporter-otlp>=1.36,<2"]
41
+ browser = ["playwright>=1.55,<2"]
42
+ all = ["pypdf>=6,<7", "Pillow>=12,<13", "keyring>=25,<26", "playwright>=1.55,<2", "opentelemetry-api>=1.36,<2", "opentelemetry-sdk>=1.36,<2", "opentelemetry-exporter-otlp>=1.36,<2"]
43
+
44
+ [project.scripts]
45
+ jarvis = "jarvis_cli.v08_main:main"
46
+
47
+ [tool.setuptools.packages.find]
48
+ where = ["src"]
49
+
50
+ [tool.setuptools.dynamic]
51
+ version = {attr = "jarvis_cli.__version__"}
52
+
53
+ [tool.pytest.ini_options]
54
+ testpaths = ["tests"]
55
+ pythonpath = ["src"]
56
+ cache_dir = "/tmp/jarvis-cli-pytest-cache"
57
+ addopts = ["--strict-markers"]
@@ -0,0 +1,4 @@
1
+ [egg_info]
2
+ tag_build =
3
+ tag_date = 0
4
+
@@ -0,0 +1,170 @@
1
+ Metadata-Version: 2.4
2
+ Name: jarvis-agent-cli
3
+ Version: 0.10.0
4
+ Summary: Standalone and remote terminal coding agent
5
+ Author: Abdullah Al Rifat
6
+ Project-URL: Homepage, https://github.com/abdullahalrifat/jarvis
7
+ Project-URL: Repository, https://github.com/abdullahalrifat/jarvis
8
+ Project-URL: Issues, https://github.com/abdullahalrifat/jarvis/issues
9
+ Project-URL: Changelog, https://github.com/abdullahalrifat/jarvis/releases
10
+ Keywords: ai,agent,coding-agent,cli,terminal,llm
11
+ Classifier: Development Status :: 4 - Beta
12
+ Classifier: Environment :: Console
13
+ Classifier: Intended Audience :: Developers
14
+ Classifier: Programming Language :: Python :: 3
15
+ Classifier: Programming Language :: Python :: 3 :: Only
16
+ Classifier: Programming Language :: Python :: 3.10
17
+ Classifier: Programming Language :: Python :: 3.11
18
+ Classifier: Programming Language :: Python :: 3.12
19
+ Classifier: Programming Language :: Python :: 3.13
20
+ Classifier: Topic :: Software Development
21
+ Requires-Python: >=3.10
22
+ Description-Content-Type: text/markdown
23
+ Requires-Dist: tomli>=2; python_version < "3.11"
24
+ Requires-Dist: jarvis-agent-core==0.16.1
25
+ Provides-Extra: multimodal
26
+ Requires-Dist: pypdf<7,>=6; extra == "multimodal"
27
+ Requires-Dist: Pillow<13,>=12; extra == "multimodal"
28
+ Provides-Extra: secure
29
+ Requires-Dist: keyring<26,>=25; extra == "secure"
30
+ Provides-Extra: telemetry
31
+ Requires-Dist: opentelemetry-api<2,>=1.36; extra == "telemetry"
32
+ Requires-Dist: opentelemetry-sdk<2,>=1.36; extra == "telemetry"
33
+ Requires-Dist: opentelemetry-exporter-otlp<2,>=1.36; extra == "telemetry"
34
+ Provides-Extra: browser
35
+ Requires-Dist: playwright<2,>=1.55; extra == "browser"
36
+ Provides-Extra: all
37
+ Requires-Dist: pypdf<7,>=6; extra == "all"
38
+ Requires-Dist: Pillow<13,>=12; extra == "all"
39
+ Requires-Dist: keyring<26,>=25; extra == "all"
40
+ Requires-Dist: playwright<2,>=1.55; extra == "all"
41
+ Requires-Dist: opentelemetry-api<2,>=1.36; extra == "all"
42
+ Requires-Dist: opentelemetry-sdk<2,>=1.36; extra == "all"
43
+ Requires-Dist: opentelemetry-exporter-otlp<2,>=1.36; extra == "all"
44
+
45
+ # Jarvis CLI
46
+
47
+ Jarvis is a distributable terminal AI coding agent. Install it from PyPI with pipx or pip, or download a standalone executable from GitHub Releases. Cloning the repository is only required for development.
48
+
49
+ ## Current contract line
50
+
51
+ Jarvis **0.10.0** consumes the provider-neutral Jarvis Core **0.16.1** common-brain contracts. Cloud completion is bound to the exact local run ID and requires real passing test records.
52
+
53
+ Jarvis Core 0.16.1 is published as an immutable PyPI release; the CLI pins that exact release so Jarvis and Core can evolve independently.
54
+
55
+ Jarvis is an open-model-first coding and research agent for local repositories. The CLI is the primary product: normal interactive work does not require the optional Server. Inference can run locally or on a trusted OpenAI-compatible/Anthropic endpoint.
56
+
57
+ ## Install
58
+
59
+ Jarvis is distributed as a normal Python application. You do not need to clone the Git repository to use it.
60
+
61
+ ### Recommended: pipx
62
+
63
+ Python 3.10+ is required. pipx installs Jarvis into an isolated environment and exposes the `jarvis` command globally.
64
+
65
+ ```bash
66
+ python3 -m pip install --user pipx
67
+ python3 -m pipx ensurepath
68
+ pipx install jarvis-agent-cli
69
+ jarvis --version
70
+ ```
71
+
72
+ Upgrade later with:
73
+
74
+ ```bash
75
+ pipx upgrade jarvis-agent-cli
76
+ ```
77
+
78
+ ### Standard pip
79
+
80
+ ```bash
81
+ python3 -m pip install jarvis-agent-cli
82
+ jarvis --version
83
+ ```
84
+
85
+ ### Standalone executable
86
+
87
+ Download the platform-specific `jarvis-*` executable from GitHub Releases. Releases provide Linux amd64, macOS arm64 and Windows amd64 builds, plus SHA256 checksums and build provenance.
88
+
89
+ On Linux/macOS:
90
+
91
+ ```bash
92
+ chmod +x ./jarvis-*
93
+ ./jarvis-* --version
94
+ ```
95
+
96
+ On Windows, run the `.exe` directly from PowerShell or Command Prompt.
97
+
98
+ ### Development install
99
+
100
+ Only contributors working on the source tree need a repository checkout:
101
+
102
+ ```bash
103
+ git clone https://github.com/abdullahalrifat/jarvis.git
104
+ cd jarvis
105
+ python3 -m pip install -e .
106
+ ```
107
+
108
+ Jarvis 0.10.0 consumes `jarvis-agent-core==0.16.1` from PyPI. The dependency is pinned to the exact Core release in `pyproject.toml`.
109
+
110
+ See [docs/install.md](docs/install.md) for the complete distribution and upgrade guide.
111
+
112
+ ## Token-efficient runtime
113
+
114
+ Core 0.16.1 provides provider-neutral primitives for bounded context construction, token/cost estimation, route budgets, adaptive routing and empirical route calibration. Jarvis keeps provider-specific execution policy in the CLI, while shared efficiency and calibration contracts remain reusable across local and remote providers without adding provider SDKs to Core.
115
+
116
+ Context construction can prioritize required task state, recent tool evidence and relevant files under an explicit budget. Route decisions can account for estimated token cost, latency, risk and measured task outcomes.
117
+
118
+ ## Real workload efficiency benchmark
119
+
120
+ Jarvis owns the task-level real workload corpus and evaluation. The benchmark covers CI triage, provider architecture, release readiness, PR review, documentation alignment and efficiency audits. Runtime execution telemetry and route calibration belong to AI Stack; `jarvis-core` supplies the provider-neutral observation and calibration contract.
121
+
122
+ Use the corpus to compare local-only, automatic and cloud-first routes using success, quality, incorrect completions, tool failures, latency, input/output/cache tokens and estimated cost. Runtime evidence should only influence automatic routing after the Core minimum-sample and quality-floor safeguards are satisfied.
123
+
124
+ ## Connect a model
125
+
126
+ ```bash
127
+ export JARVIS_PROVIDER=openai
128
+ export JARVIS_BASE_URL=https://your-endpoint.example/v1
129
+ export JARVIS_MODEL=your-coding-model
130
+ export JARVIS_API_KEY=your-secret
131
+
132
+ jarvis model-doctor
133
+ cd /path/to/repository
134
+ jarvis "review this repository and fix the highest-impact issue"
135
+ ```
136
+
137
+ Named profiles, fallback and automatic measured routing are documented in [docs/models.md](docs/models.md).
138
+
139
+ ## Jarvis versus Server
140
+
141
+ | Need | Use |
142
+ | --- | --- |
143
+ | Local repository work, interactive terminal, local automation | **Jarvis** |
144
+ | Durable cloud tasks, shared queues and external workers | **Server** |
145
+
146
+ Jarvis and Server share stable contracts through `jarvis-agent-core`, while tool execution and storage policy remain separate.
147
+
148
+ ## Implemented runtime
149
+
150
+ The runtime includes bounded repository/Git tools, allowlisted command execution, sandbox/network policy, sessions/checkpoints, proof records, multimodal context, hierarchical instructions/memory, Skills/Hooks, deny-by-default MCP, repository/LSP intelligence, worktrees, plan mode, adaptive context, failure memory, multi-agent execution, heterogeneous routing, browser verification, background jobs/cron, observability and the remote Run/cloud worker protocol.
151
+
152
+ ## Development
153
+
154
+ ```bash
155
+ python -m pip install -e . -r requirements.txt
156
+ black --check --diff src tests
157
+ ruff check src tests --select E9,F63,F7,F82
158
+ pytest -q --cov=. --cov-report=term-missing --cov-fail-under=70
159
+ python -m build
160
+ ```
161
+
162
+ Additional guides:
163
+
164
+ - [Real workload efficiency benchmark](docs/real-workload-efficiency.md)
165
+ - [Operations](docs/operations.md)
166
+ - [Models and routing](docs/models.md)
167
+ - [MCP](docs/mcp.md)
168
+ - [Web search](docs/web-search.md)
169
+ - [v0.8 autonomous runtime](docs/v0.8-autonomous-runtime.md)
170
+ - [World-class readiness](docs/world-class-readiness.md)
@@ -0,0 +1,103 @@
1
+ README.md
2
+ pyproject.toml
3
+ src/jarvis_agent_cli.egg-info/PKG-INFO
4
+ src/jarvis_agent_cli.egg-info/SOURCES.txt
5
+ src/jarvis_agent_cli.egg-info/dependency_links.txt
6
+ src/jarvis_agent_cli.egg-info/entry_points.txt
7
+ src/jarvis_agent_cli.egg-info/requires.txt
8
+ src/jarvis_agent_cli.egg-info/top_level.txt
9
+ src/jarvis_cli/__init__.py
10
+ src/jarvis_cli/__main__.py
11
+ src/jarvis_cli/attachments.py
12
+ src/jarvis_cli/autonomous_sdk.py
13
+ src/jarvis_cli/background_processes.py
14
+ src/jarvis_cli/benchmark_fixtures.py
15
+ src/jarvis_cli/browser_agent.py
16
+ src/jarvis_cli/change_review.py
17
+ src/jarvis_cli/client.py
18
+ src/jarvis_cli/cloud_isolation.py
19
+ src/jarvis_cli/dashboard.py
20
+ src/jarvis_cli/efficiency_runtime.py
21
+ src/jarvis_cli/escalation_v07.py
22
+ src/jarvis_cli/evals.py
23
+ src/jarvis_cli/evidence_v07.py
24
+ src/jarvis_cli/execution_evidence_runtime.py
25
+ src/jarvis_cli/execution_hardening.py
26
+ src/jarvis_cli/features.py
27
+ src/jarvis_cli/hooks.py
28
+ src/jarvis_cli/ide_protocol.py
29
+ src/jarvis_cli/impact_v07.py
30
+ src/jarvis_cli/instructions.py
31
+ src/jarvis_cli/job_worker.py
32
+ src/jarvis_cli/jobs.py
33
+ src/jarvis_cli/local_agent.py
34
+ src/jarvis_cli/lsp_full.py
35
+ src/jarvis_cli/main.py
36
+ src/jarvis_cli/mcp.py
37
+ src/jarvis_cli/mcp_policy_runtime.py
38
+ src/jarvis_cli/mcp_registry.py
39
+ src/jarvis_cli/observability.py
40
+ src/jarvis_cli/patch_guard_v07.py
41
+ src/jarvis_cli/plan.py
42
+ src/jarvis_cli/plugin_commands.py
43
+ src/jarvis_cli/plugin_runtime.py
44
+ src/jarvis_cli/plugins.py
45
+ src/jarvis_cli/process_env.py
46
+ src/jarvis_cli/process_policy_runtime.py
47
+ src/jarvis_cli/profiles.py
48
+ src/jarvis_cli/proof_runtime.py
49
+ src/jarvis_cli/protocol.py
50
+ src/jarvis_cli/provider_messages.py
51
+ src/jarvis_cli/quality_runtime.py
52
+ src/jarvis_cli/real_repo_benchmark.py
53
+ src/jarvis_cli/render.py
54
+ src/jarvis_cli/repository_graph.py
55
+ src/jarvis_cli/repository_map.py
56
+ src/jarvis_cli/routing_v07.py
57
+ src/jarvis_cli/runtime_hooks.py
58
+ src/jarvis_cli/runtime_platform.py
59
+ src/jarvis_cli/sandbox.py
60
+ src/jarvis_cli/sdk.py
61
+ src/jarvis_cli/secrets.py
62
+ src/jarvis_cli/sessions.py
63
+ src/jarvis_cli/skills.py
64
+ src/jarvis_cli/speculation_v07.py
65
+ src/jarvis_cli/team_runtime.py
66
+ src/jarvis_cli/tui.py
67
+ src/jarvis_cli/update.py
68
+ src/jarvis_cli/v05_main.py
69
+ src/jarvis_cli/v061_main.py
70
+ src/jarvis_cli/v06_main.py
71
+ src/jarvis_cli/v071_main.py
72
+ src/jarvis_cli/v07_main.py
73
+ src/jarvis_cli/v08_main.py
74
+ src/jarvis_cli/web.py
75
+ src/jarvis_cli/workspace_trust.py
76
+ tests/test_background_processes.py
77
+ tests/test_cli.py
78
+ tests/test_cloud_isolation.py
79
+ tests/test_execution_hardening.py
80
+ tests/test_features.py
81
+ tests/test_ide_protocol.py
82
+ tests/test_local_agent.py
83
+ tests/test_proof_runtime_redaction.py
84
+ tests/test_quality_runtime.py
85
+ tests/test_real_repo_benchmark.py
86
+ tests/test_runtime_hardening.py
87
+ tests/test_scripts.py
88
+ tests/test_sdk_exports.py
89
+ tests/test_v04_adaptive_integration.py
90
+ tests/test_v05_benchmark_fixture.py
91
+ tests/test_v05_runtime_hooks.py
92
+ tests/test_v05_world_class.py
93
+ tests/test_v06_platform.py
94
+ tests/test_v06_release_quality.py
95
+ tests/test_v071_cloud_workspaces.py
96
+ tests/test_v071_post_merge_hardening.py
97
+ tests/test_v07_efficiency.py
98
+ tests/test_v081_release_alignment.py
99
+ tests/test_v081_security_hardening.py
100
+ tests/test_v082_adversarial_security.py
101
+ tests/test_v082_worker_chaos.py
102
+ tests/test_v08_autonomous_runtime.py
103
+ tests/test_world_class.py
@@ -0,0 +1,2 @@
1
+ [console_scripts]
2
+ jarvis = jarvis_cli.v08_main:main
@@ -0,0 +1,28 @@
1
+ jarvis-agent-core==0.16.1
2
+
3
+ [:python_version < "3.11"]
4
+ tomli>=2
5
+
6
+ [all]
7
+ pypdf<7,>=6
8
+ Pillow<13,>=12
9
+ keyring<26,>=25
10
+ playwright<2,>=1.55
11
+ opentelemetry-api<2,>=1.36
12
+ opentelemetry-sdk<2,>=1.36
13
+ opentelemetry-exporter-otlp<2,>=1.36
14
+
15
+ [browser]
16
+ playwright<2,>=1.55
17
+
18
+ [multimodal]
19
+ pypdf<7,>=6
20
+ Pillow<13,>=12
21
+
22
+ [secure]
23
+ keyring<26,>=25
24
+
25
+ [telemetry]
26
+ opentelemetry-api<2,>=1.36
27
+ opentelemetry-sdk<2,>=1.36
28
+ opentelemetry-exporter-otlp<2,>=1.36
@@ -0,0 +1,3 @@
1
+ """Jarvis standalone open-model coding agent."""
2
+
3
+ __version__ = "0.10.0"
@@ -0,0 +1,3 @@
1
+ from .v08_main import main
2
+
3
+ raise SystemExit(main())