devready-cli 0.0.2__tar.gz → 0.0.4__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 (45) hide show
  1. {devready_cli-0.0.2 → devready_cli-0.0.4}/.claude-plugin/plugin.json +2 -1
  2. {devready_cli-0.0.2 → devready_cli-0.0.4}/AGENTS.md +1 -1
  3. {devready_cli-0.0.2 → devready_cli-0.0.4}/CHANGELOG.md +8 -0
  4. {devready_cli-0.0.2 → devready_cli-0.0.4}/PKG-INFO +5 -3
  5. {devready_cli-0.0.2 → devready_cli-0.0.4}/README.md +2 -1
  6. devready_cli-0.0.4/commands/doctor.md +5 -0
  7. {devready_cli-0.0.2 → devready_cli-0.0.4}/docs/agents.md +14 -1
  8. {devready_cli-0.0.2 → devready_cli-0.0.4}/pyproject.toml +3 -2
  9. {devready_cli-0.0.2 → devready_cli-0.0.4}/skills/devready/SKILL.md +7 -1
  10. devready_cli-0.0.4/src/devready/__init__.py +1 -0
  11. devready_cli-0.0.4/src/devready/__main__.py +5 -0
  12. {devready_cli-0.0.2 → devready_cli-0.0.4}/tests/unit/test_cli.py +10 -0
  13. devready_cli-0.0.2/commands/doctor.md +0 -5
  14. devready_cli-0.0.2/src/devready/__init__.py +0 -1
  15. {devready_cli-0.0.2 → devready_cli-0.0.4}/.claude-plugin/marketplace.json +0 -0
  16. {devready_cli-0.0.2 → devready_cli-0.0.4}/.gitattributes +0 -0
  17. {devready_cli-0.0.2 → devready_cli-0.0.4}/.github/ISSUE_TEMPLATE/bug_report.yml +0 -0
  18. {devready_cli-0.0.2 → devready_cli-0.0.4}/.github/ISSUE_TEMPLATE/feature_request.yml +0 -0
  19. {devready_cli-0.0.2 → devready_cli-0.0.4}/.github/PULL_REQUEST_TEMPLATE.md +0 -0
  20. {devready_cli-0.0.2 → devready_cli-0.0.4}/.github/workflows/ci.yml +0 -0
  21. {devready_cli-0.0.2 → devready_cli-0.0.4}/.github/workflows/publish.yml +0 -0
  22. {devready_cli-0.0.2 → devready_cli-0.0.4}/.gitignore +0 -0
  23. {devready_cli-0.0.2 → devready_cli-0.0.4}/.mcp.json +0 -0
  24. {devready_cli-0.0.2 → devready_cli-0.0.4}/CODE_OF_CONDUCT.md +0 -0
  25. {devready_cli-0.0.2 → devready_cli-0.0.4}/CONTRIBUTING.md +0 -0
  26. {devready_cli-0.0.2 → devready_cli-0.0.4}/LICENSE +0 -0
  27. {devready_cli-0.0.2 → devready_cli-0.0.4}/SECURITY.md +0 -0
  28. {devready_cli-0.0.2 → devready_cli-0.0.4}/docs/research.md +0 -0
  29. {devready_cli-0.0.2 → devready_cli-0.0.4}/docs/schema.json +0 -0
  30. {devready_cli-0.0.2 → devready_cli-0.0.4}/docs/technical-plan.md +0 -0
  31. {devready_cli-0.0.2 → devready_cli-0.0.4}/src/devready/checks/__init__.py +0 -0
  32. {devready_cli-0.0.2 → devready_cli-0.0.4}/src/devready/checks/extras.py +0 -0
  33. {devready_cli-0.0.2 → devready_cli-0.0.4}/src/devready/checks/project.py +0 -0
  34. {devready_cli-0.0.2 → devready_cli-0.0.4}/src/devready/checks/python_check.py +0 -0
  35. {devready_cli-0.0.2 → devready_cli-0.0.4}/src/devready/checks/tools.py +0 -0
  36. {devready_cli-0.0.2 → devready_cli-0.0.4}/src/devready/cli.py +0 -0
  37. {devready_cli-0.0.2 → devready_cli-0.0.4}/src/devready/explain.py +0 -0
  38. {devready_cli-0.0.2 → devready_cli-0.0.4}/src/devready/mcp_server.py +0 -0
  39. {devready_cli-0.0.2 → devready_cli-0.0.4}/src/devready/models.py +0 -0
  40. {devready_cli-0.0.2 → devready_cli-0.0.4}/src/devready/runner.py +0 -0
  41. {devready_cli-0.0.2 → devready_cli-0.0.4}/src/devready/versions.py +0 -0
  42. {devready_cli-0.0.2 → devready_cli-0.0.4}/tests/unit/test_extras.py +0 -0
  43. {devready_cli-0.0.2 → devready_cli-0.0.4}/tests/unit/test_mcp.py +0 -0
  44. {devready_cli-0.0.2 → devready_cli-0.0.4}/tests/unit/test_schema.py +0 -0
  45. {devready_cli-0.0.2 → devready_cli-0.0.4}/tests/unit/test_versions_project.py +0 -0
@@ -1,6 +1,7 @@
1
1
  {
2
2
  "name": "devready",
3
- "version": "0.0.2",
3
+ "version": "0.0.4",
4
+ "homepage": "https://devready-ten.vercel.app/",
4
5
  "description": "Read-only environment preflight: compares a project's declared Node/Python versions with what is installed.",
5
6
  "author": { "name": "DevReady contributors" },
6
7
  "license": "MIT"
@@ -1,6 +1,6 @@
1
1
  # Agent instructions
2
2
 
3
- Before running installs, builds or tests in a project, or when setup errors mention versions or missing tools, run `devready check --format json` (or `uvx --from devready-cli devready check --format json`) and read the result.
3
+ Before running installs, builds or tests in a project, or when setup errors mention versions or missing tools, run `devready check --format json` and read the result. If `devready` is not on PATH, try `python -m devready check --format json`, then `uvx --from devready-cli devready check --format json`; if neither works, tell the user (`pipx install devready-cli`) instead of installing it yourself.
4
4
 
5
5
  - `fail` means a declared requirement is unmet: tell the user and suggest switching versions; do not work around it.
6
6
  - `skip`/`error` mean "not evaluated", not "ok".
@@ -1,5 +1,13 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.0.4 - 2026-10-16
4
+ - `python -m devready` entry point.
5
+ - Skill, `/devready:doctor` and `AGENTS.md` now fall back to `python -m devready`, `uvx`, then `pipx run`, and tell the user how to install instead of failing.
6
+ - Docs: requirements (`uv` for the plugin MCP server), no-`uv` MCP config and a troubleshooting table.
7
+
8
+ ## 0.0.3 - 2026-10-16
9
+ - Add project website (https://devready-ten.vercel.app/) to package metadata.
10
+
3
11
  ## 0.0.2 - 2026-10-16
4
12
  - Docker CLI/daemon check (only when a Dockerfile or compose file exists), `.tool-versions`, `.env.example` vs `.env` key names (values never read), git identity presence, free disk space.
5
13
  - `devready explain <check_id>`.
@@ -1,8 +1,9 @@
1
1
  Metadata-Version: 2.5
2
2
  Name: devready-cli
3
- Version: 0.0.2
3
+ Version: 0.0.4
4
4
  Summary: A local-first, read-only CLI that checks a project's environment requirements against what is installed.
5
- Project-URL: Homepage, https://github.com/Evalogical-Inc/devReady
5
+ Project-URL: Homepage, https://devready-ten.vercel.app/
6
+ Project-URL: Repository, https://github.com/Evalogical-Inc/devReady
6
7
  Project-URL: Issues, https://github.com/Evalogical-Inc/devReady/issues
7
8
  Author: Evalogical Inc
8
9
  License-Expression: MIT
@@ -32,6 +33,7 @@ Built for humans, CI, and AI coding agents (Claude Code, Codex, any MCP client).
32
33
 
33
34
  [![CI](https://github.com/Evalogical-Inc/devReady/actions/workflows/ci.yml/badge.svg)](https://github.com/Evalogical-Inc/devReady/actions/workflows/ci.yml)
34
35
  [![PyPI](https://img.shields.io/pypi/v/devready-cli)](https://pypi.org/project/devready-cli/)
36
+ [![Website](https://img.shields.io/badge/website-devready--ten.vercel.app-ff6a35)](https://devready-ten.vercel.app/)
35
37
  [![License: MIT](https://img.shields.io/badge/license-MIT-green.svg)](LICENSE)
36
38
  ![Python 3.10+](https://img.shields.io/badge/python-3.10%2B-blue)
37
39
  ![Dependencies: 0](https://img.shields.io/badge/dependencies-0-brightgreen)
@@ -150,7 +152,7 @@ devready --version
150
152
 
151
153
  DevReady ships the same engine three ways, so your agent can verify the environment *before* it installs, builds or tests.
152
154
 
153
- **Claude Code** - plugin with a skill, a `/devready:doctor` command and an MCP server:
155
+ **Claude Code** - plugin with a skill, a `/devready:doctor` command and an MCP server (the MCP server needs [`uv`](https://docs.astral.sh/uv/); the rest works without it once `devready-cli` is installed):
154
156
 
155
157
  ```text
156
158
  /plugin marketplace add Evalogical-Inc/devReady
@@ -9,6 +9,7 @@ Built for humans, CI, and AI coding agents (Claude Code, Codex, any MCP client).
9
9
 
10
10
  [![CI](https://github.com/Evalogical-Inc/devReady/actions/workflows/ci.yml/badge.svg)](https://github.com/Evalogical-Inc/devReady/actions/workflows/ci.yml)
11
11
  [![PyPI](https://img.shields.io/pypi/v/devready-cli)](https://pypi.org/project/devready-cli/)
12
+ [![Website](https://img.shields.io/badge/website-devready--ten.vercel.app-ff6a35)](https://devready-ten.vercel.app/)
12
13
  [![License: MIT](https://img.shields.io/badge/license-MIT-green.svg)](LICENSE)
13
14
  ![Python 3.10+](https://img.shields.io/badge/python-3.10%2B-blue)
14
15
  ![Dependencies: 0](https://img.shields.io/badge/dependencies-0-brightgreen)
@@ -127,7 +128,7 @@ devready --version
127
128
 
128
129
  DevReady ships the same engine three ways, so your agent can verify the environment *before* it installs, builds or tests.
129
130
 
130
- **Claude Code** - plugin with a skill, a `/devready:doctor` command and an MCP server:
131
+ **Claude Code** - plugin with a skill, a `/devready:doctor` command and an MCP server (the MCP server needs [`uv`](https://docs.astral.sh/uv/); the rest works without it once `devready-cli` is installed):
131
132
 
132
133
  ```text
133
134
  /plugin marketplace add Evalogical-Inc/devReady
@@ -0,0 +1,5 @@
1
+ ---
2
+ description: Run DevReady and explain any environment problems
3
+ ---
4
+
5
+ Run `devready check --format json` in the current project. If the command is missing, follow the fallback order in the devready skill (`python -m devready`, then `uvx`, then `pipx run`) and, if none work, tell the user how to install it instead of installing anything yourself. Summarize failures first, then warnings, each with the suggested next step. Do not change anything without asking.
@@ -2,6 +2,11 @@
2
2
 
3
3
  DevReady is a CLI; agents call `devready check --format json` (schema: `schema.json`).
4
4
 
5
+ ## Requirements
6
+
7
+ - Python 3.10+ for the CLI itself.
8
+ - For the **plugin's MCP server** and the `uvx` examples below: [`uv`](https://docs.astral.sh/uv/) installed and on PATH. Without it the MCP server reports "Connection closed". The skill and `/devready:doctor` still work without it if `devready` is installed (`pipx install devready-cli` or `pip install devready-cli`).
9
+
5
10
  ## Claude Code
6
11
 
7
12
  ```text
@@ -23,4 +28,12 @@ command = "uvx"
23
28
  args = ["--from", "devready-cli", "devready", "mcp"]
24
29
  ```
25
30
 
26
- The CLI must be installed first: `pipx install devready-cli`.
31
+ No `uv`? Install the CLI (`pipx install devready-cli` or `pip install devready-cli`) and use `command = "devready"`, `args = ["mcp"]` instead.
32
+
33
+ ## Troubleshooting
34
+
35
+ | Symptom | Cause and fix |
36
+ |---|---|
37
+ | MCP server "Connection closed" | `uvx` not found. Install `uv`, or install the CLI and point the MCP config at `devready mcp`. |
38
+ | `devready: command not found` | Not installed, or its scripts folder is not on PATH. Run `python -m devready check` or reinstall with `pipx`. |
39
+ | `python -m devready` fails | The package is not installed for that Python. `pip install devready-cli`. |
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
4
4
 
5
5
  [project]
6
6
  name = "devready-cli"
7
- version = "0.0.2"
7
+ version = "0.0.4"
8
8
  description = "A local-first, read-only CLI that checks a project's environment requirements against what is installed."
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.10"
@@ -26,7 +26,8 @@ dependencies = []
26
26
  dev = ["pytest>=8", "ruff>=0.6", "jsonschema>=4"]
27
27
 
28
28
  [project.urls]
29
- Homepage = "https://github.com/Evalogical-Inc/devReady"
29
+ Homepage = "https://devready-ten.vercel.app/"
30
+ Repository = "https://github.com/Evalogical-Inc/devReady"
30
31
  Issues = "https://github.com/Evalogical-Inc/devReady/issues"
31
32
 
32
33
  [project.scripts]
@@ -11,7 +11,13 @@ Run from the project root:
11
11
  devready check --format json
12
12
  ```
13
13
 
14
- If `devready` is not installed, use `uvx --from devready-cli devready check --format json` or `pipx run --spec devready-cli devready check --format json`. Do not install anything without asking the user.
14
+ If `devready` is not found, try these in order and use the first that works:
15
+
16
+ 1. `python -m devready check --format json` (or `python3 -m ...`), if the package is installed for that Python.
17
+ 2. `uvx --from devready-cli devready check --format json`, if `uv` is installed.
18
+ 3. `pipx run --spec devready-cli devready check --format json`, if `pipx` is installed.
19
+
20
+ If none work, tell the user and offer `pipx install devready-cli` (or `pip install --user devready-cli`). Do not install anything without asking.
15
21
 
16
22
  ## Reading the result
17
23
 
@@ -0,0 +1 @@
1
+ __version__ = "0.0.4"
@@ -0,0 +1,5 @@
1
+ import sys
2
+
3
+ from devready.cli import main
4
+
5
+ sys.exit(main())
@@ -23,3 +23,13 @@ def test_bad_usage_exit_code():
23
23
  def test_version(capsys):
24
24
  assert main(["--version"]) == 0
25
25
  assert "devready" in capsys.readouterr().out
26
+
27
+
28
+ def test_python_dash_m_entry_point():
29
+ import subprocess
30
+ import sys
31
+
32
+ p = subprocess.run(
33
+ [sys.executable, "-m", "devready", "--version"], capture_output=True, text=True
34
+ )
35
+ assert p.returncode == 0 and "devready" in p.stdout
@@ -1,5 +0,0 @@
1
- ---
2
- description: Run DevReady and explain any environment problems
3
- ---
4
-
5
- Run `devready check --format json` in the current project (see the devready skill if the command is missing). Summarize failures first, then warnings, each with the suggested next step. Do not change anything without asking.
@@ -1 +0,0 @@
1
- __version__ = "0.0.2"
File without changes
File without changes
File without changes
File without changes