invar-tools 1.3.2__py3-none-any.whl → 1.4.0__py3-none-any.whl

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.
invar/shell/templates.py CHANGED
@@ -434,7 +434,7 @@ Find your Python path: `python -c "import sys; print(sys.executable)"`
434
434
 
435
435
  ```bash
436
436
  # Recommended: use uvx (no installation needed)
437
- uvx --from invar-tools invar guard
437
+ uvx invar-tools guard
438
438
 
439
439
  # Or install globally
440
440
  pip install invar-tools
@@ -449,7 +449,7 @@ Run the MCP server directly:
449
449
 
450
450
  ```bash
451
451
  # Using uvx
452
- uvx --from invar-tools invar mcp
452
+ uvx invar-tools mcp
453
453
 
454
454
  # Or if installed
455
455
  invar mcp
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: invar-tools
3
- Version: 1.3.2
3
+ Version: 1.4.0
4
4
  Summary: AI-native software engineering tools with design-by-contract verification
5
5
  Project-URL: Homepage, https://github.com/tefx/invar
6
6
  Project-URL: Documentation, https://github.com/tefx/invar#readme
@@ -114,38 +114,43 @@ Guard passed.
114
114
  │ │ └── dependencies = ["invar-runtime"] ← Ships with code │
115
115
  │ │ │
116
116
  │ └── Development (never enters production) │
117
- │ └── uvx --from invar-tools invar guard ← Guides agents │
117
+ │ └── uvx invar-tools guard ← Guides agents │
118
118
  └───────────────────────────────────────────────────────────────────┘
119
119
  ```
120
120
 
121
121
  | Package | Purpose | Install |
122
122
  |---------|---------|---------|
123
123
  | **invar-runtime** | Runtime contracts. Add to your project dependencies. | `pip install invar-runtime` |
124
- | **invar-tools** | Development tools. Guides agents during development. | `uvx --from invar-tools invar <cmd>` |
124
+ | **invar-tools** | Development tools. Guides agents during development. | `uvx invar-tools <cmd>` |
125
125
 
126
126
  **Why uvx?** Always uses latest version, doesn't pollute project dependencies, auto-detects your project's venv.
127
127
 
128
128
  ### 🆕 New Project
129
129
 
130
130
  ```bash
131
- # 1. Initialize with Claude Code (full experience)
132
- uvx --from invar-tools invar init --claude
131
+ # 1. Enter your project directory
132
+ cd your-project
133
133
 
134
- # 2. Add runtime contracts to your project
134
+ # 2. Initialize with Claude Code (full experience)
135
+ uvx invar-tools init --claude
136
+
137
+ # 3. Add runtime contracts to your project
135
138
  pip install invar-runtime
136
139
  # Or add to pyproject.toml: dependencies = ["invar-runtime"]
137
140
 
138
- # 3. Start coding with AI
141
+ # 4. Start coding with AI
139
142
  ```
140
143
 
141
144
  ### 📁 Existing Project
142
145
 
143
146
  ```bash
147
+ cd your-project
148
+
144
149
  # Update managed files, preserve your customizations
145
- uvx --from invar-tools invar init --claude
150
+ uvx invar-tools init --claude
146
151
 
147
152
  # Or without Claude Code integration
148
- uvx --from invar-tools invar init
153
+ uvx invar-tools init
149
154
  ```
150
155
 
151
156
  Invar's init is idempotent—safe to run multiple times. It detects existing configuration and updates only managed regions.
@@ -47,7 +47,7 @@ invar/shell/mutation.py,sha256=Lfyk2b8j8-hxAq-iwAgQeOhr7Ci6c5tRF1TXe3CxQCs,8914
47
47
  invar/shell/property_tests.py,sha256=N9JreyH5PqR89oF5yLcX7ZAV-Koyg5BKo-J05-GUPsA,9109
48
48
  invar/shell/subprocess_env.py,sha256=9oXl3eMEbzLsFEgMHqobEw6oW_wV0qMEP7pklwm58Pw,11453
49
49
  invar/shell/template_engine.py,sha256=IzOiGsKVFo0lDUdtg27wMzIJJKToclv151RDZuDnHHo,11027
50
- invar/shell/templates.py,sha256=FGrHtVCUNF6K6KHrJquI9vyET0zyDkVy5ND1mAeY6NE,15934
50
+ invar/shell/templates.py,sha256=l2En95E8jRVlojdQIqdZgRLVB43f_b1d_AJapKkozwA,15908
51
51
  invar/shell/testing.py,sha256=PTrrCB0nIARuDQa_XREoRzbnqjXxju1l9Eb83pivH6c,10634
52
52
  invar/shell/commands/__init__.py,sha256=MEkKwVyjI9DmkvBpJcuumXo2Pg_FFkfEr-Rr3nrAt7A,284
53
53
  invar/shell/commands/guard.py,sha256=aYqOhxclt_oF93TcSGN1zaB4RUsSQjMUYxfBw2QmqoM,18038
@@ -93,10 +93,10 @@ invar/templates/skills/develop/SKILL.md.jinja,sha256=AYlvhOnHW-EbuLnt8KwVweoKuV1
93
93
  invar/templates/skills/investigate/SKILL.md.jinja,sha256=bOLdLMH5WUVBYOo4NpsfyvI6xx7I1lCNr_X-8bMe_kg,2744
94
94
  invar/templates/skills/propose/SKILL.md.jinja,sha256=_iDLYN6-cfzA8n0_8sv-Dnpm1xq9IIpcDyM10mU2WUA,2420
95
95
  invar/templates/skills/review/SKILL.md.jinja,sha256=UDzhdjjzXKeR4olM6S2xHkw_Z-uznaBb9467O2_EOhY,5367
96
- invar_tools-1.3.2.dist-info/METADATA,sha256=mF3BbovusFAmksInxjWG_s257mh0LkUGcGKxBbtY9KA,16695
97
- invar_tools-1.3.2.dist-info/WHEEL,sha256=WLgqFyCfm_KASv4WHyYy0P3pM_m7J5L9k2skdKLirC8,87
98
- invar_tools-1.3.2.dist-info/entry_points.txt,sha256=xjkp8_Kipb6KJR6VNfkAEqiOpvrwUnwUG53cegBA6pQ,57
99
- invar_tools-1.3.2.dist-info/licenses/LICENSE,sha256=qeFksp4H4kfTgQxPCIu3OdagXyiZcgBlVfsQ6M5oFyk,10767
100
- invar_tools-1.3.2.dist-info/licenses/LICENSE-GPL,sha256=IvZfC6ZbP7CLjytoHVzvpDZpD-Z3R_qa1GdMdWlWQ6Q,35157
101
- invar_tools-1.3.2.dist-info/licenses/NOTICE,sha256=joEyMyFhFY8Vd8tTJ-a3SirI0m2Sd0WjzqYt3sdcglc,2561
102
- invar_tools-1.3.2.dist-info/RECORD,,
96
+ invar_tools-1.4.0.dist-info/METADATA,sha256=E3voRn5-W98FTJLR4AM1Oq7QyZ1fEtJvubGQ4myhZBs,16698
97
+ invar_tools-1.4.0.dist-info/WHEEL,sha256=WLgqFyCfm_KASv4WHyYy0P3pM_m7J5L9k2skdKLirC8,87
98
+ invar_tools-1.4.0.dist-info/entry_points.txt,sha256=RwH_EhqgtFPsnO6RcrwrAb70Zyfb8Mh6uUtztWnUxGk,102
99
+ invar_tools-1.4.0.dist-info/licenses/LICENSE,sha256=qeFksp4H4kfTgQxPCIu3OdagXyiZcgBlVfsQ6M5oFyk,10767
100
+ invar_tools-1.4.0.dist-info/licenses/LICENSE-GPL,sha256=IvZfC6ZbP7CLjytoHVzvpDZpD-Z3R_qa1GdMdWlWQ6Q,35157
101
+ invar_tools-1.4.0.dist-info/licenses/NOTICE,sha256=joEyMyFhFY8Vd8tTJ-a3SirI0m2Sd0WjzqYt3sdcglc,2561
102
+ invar_tools-1.4.0.dist-info/RECORD,,
@@ -1,2 +1,3 @@
1
1
  [console_scripts]
2
2
  invar = invar.shell.commands.guard:app
3
+ invar-tools = invar.shell.commands.guard:app