codespy-ai 0.1.0__py3-none-any.whl → 0.1.1__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.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: codespy-ai
3
- Version: 0.1.0
3
+ Version: 0.1.1
4
4
  Summary: Code review agent powered by DSPy
5
5
  License: MIT
6
6
  License-File: LICENSE
@@ -52,7 +52,7 @@ Description-Content-Type: text/markdown
52
52
  <img src="assets/codespy-logo.png" alt="CodeSpy logo">
53
53
  </p>
54
54
 
55
- <h1 align="center">CodeSpy</h1>
55
+ <h1 align="center">Code<a href="https://github.com/khezen/codespy">Spy</a></h1>
56
56
 
57
57
  <p align="center">
58
58
  <strong>Automated code reviews for teams who care about correctness.</strong>
@@ -113,6 +113,7 @@ Built for **engineering teams that care about correctness, security, and control
113
113
  - 💰 **Cost Tracking** - Track LLM calls, tokens, and costs per review
114
114
  - 🤖 **Model Agnostic** - Works with OpenAI, AWS Bedrock, Anthropic, Ollama, and more via LiteLLM
115
115
  - 🐳 **Docker Ready** - Run locally or in the cloud with Docker
116
+ - 🔌 **GitHub Action** - One-line integration for automatic PR reviews
116
117
 
117
118
  ---
118
119
 
@@ -124,6 +125,13 @@ Built for **engineering teams that care about correctness, security, and control
124
125
  pip install codespy-ai
125
126
  ```
126
127
 
128
+ ### Using Homebrew (macOS/Linux)
129
+
130
+ ```bash
131
+ brew tap khezen/codespy
132
+ brew install codespy
133
+ ```
134
+
127
135
  ### Using Docker
128
136
 
129
137
  ```bash
@@ -221,6 +229,59 @@ docker run --rm \
221
229
  ghcr.io/khezen/codespy:0.1.0 review https://github.com/owner/repo/pull/123
222
230
  ```
223
231
 
232
+ ### GitHub Action
233
+
234
+ Add CodeSpy to your repository for automatic PR reviews:
235
+
236
+ ```yaml
237
+ # .github/workflows/codespy-review.yml
238
+ name: CodeSpy Code Review
239
+
240
+ on:
241
+ pull_request:
242
+ types: [opened, synchronize, reopened]
243
+
244
+ jobs:
245
+ review:
246
+ runs-on: ubuntu-latest
247
+ permissions:
248
+ contents: read
249
+ pull-requests: write
250
+
251
+ steps:
252
+ - name: Run CodeSpy Review
253
+ uses: khezen/codespy@v1
254
+ with:
255
+ model: 'claude-sonnet-4-5-20250929'
256
+ anthropic-api-key: ${{ secrets.ANTHROPIC_API_KEY }}
257
+ ```
258
+
259
+ **Available Providers:**
260
+
261
+ ```yaml
262
+ # OpenAI
263
+ - uses: khezen/codespy@v1
264
+ with:
265
+ model: 'gpt-5'
266
+ openai-api-key: ${{ secrets.OPENAI_API_KEY }}
267
+
268
+ # AWS Bedrock
269
+ - uses: khezen/codespy@v1
270
+ with:
271
+ model: 'bedrock/us.anthropic.claude-sonnet-4-5-20250929-v1:0'
272
+ aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
273
+ aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
274
+ aws-region: 'us-east-1'
275
+
276
+ # Google Gemini
277
+ - uses: khezen/codespy@v1
278
+ with:
279
+ model: 'gemini/gemini-2.5-pro'
280
+ gemini-api-key: ${{ secrets.GEMINI_API_KEY }}
281
+ ```
282
+
283
+ See [`.github/workflows/codespy-review.yml.example`](.github/workflows/codespy-review.yml.example) for more examples.
284
+
224
285
  ---
225
286
 
226
287
  ## Configuration
@@ -234,9 +295,8 @@ Priority: Environment Variables > YAML Config > Defaults
234
295
  ### Setup
235
296
 
236
297
  ```bash
237
- # Copy the example files
298
+ # Copy the example file
238
299
  cp .env.example .env
239
- cp codespy.example.yaml codespy.yaml # Optional, for advanced config
240
300
  ```
241
301
 
242
302
  ### GitHub Token
@@ -61,8 +61,8 @@ codespy/tools/web/__init__.py,sha256=xGNyE1CQipwp8CynlV_Dvkaf6VppKjH05rsD-J-PFqE
61
61
  codespy/tools/web/client.py,sha256=o0Y0qpxg2_rxDzZ8MbrgJhzkQQ9b1WHZywYsdqjzyAA,8649
62
62
  codespy/tools/web/models.py,sha256=4VhZhFyIrec2NXjdB5YbfuSXz9z6n8sB7cSVsd6SRs8,2117
63
63
  codespy/tools/web/server.py,sha256=l_G9gc0aEB4jGHlspbavZXIoz2q0Lpwe0WLU_sdiQRg,2114
64
- codespy_ai-0.1.0.dist-info/METADATA,sha256=CfS5z7gLXEnut52OZx0nwf-PNjxmmf4BOJ2I7cJ2zZw,24871
65
- codespy_ai-0.1.0.dist-info/WHEEL,sha256=kJCRJT_g0adfAJzTx2GUMmS80rTJIVHRCfG0DQgLq3o,88
66
- codespy_ai-0.1.0.dist-info/entry_points.txt,sha256=II1KMChjcCbKaTvbqqDQ6zYHVZ3Hwgu5RvyjWwvFuTM,43
67
- codespy_ai-0.1.0.dist-info/licenses/LICENSE,sha256=_-qwumi2UGIP8c2laLk49moSb5MYWN07rJ-IPMntAb4,1063
68
- codespy_ai-0.1.0.dist-info/RECORD,,
64
+ codespy_ai-0.1.1.dist-info/METADATA,sha256=0IpWVFiZp8J06Vwy2Uh218b4FSvGnxqhbUoRJ5vj5tg,26209
65
+ codespy_ai-0.1.1.dist-info/WHEEL,sha256=kJCRJT_g0adfAJzTx2GUMmS80rTJIVHRCfG0DQgLq3o,88
66
+ codespy_ai-0.1.1.dist-info/entry_points.txt,sha256=II1KMChjcCbKaTvbqqDQ6zYHVZ3Hwgu5RvyjWwvFuTM,43
67
+ codespy_ai-0.1.1.dist-info/licenses/LICENSE,sha256=_-qwumi2UGIP8c2laLk49moSb5MYWN07rJ-IPMntAb4,1063
68
+ codespy_ai-0.1.1.dist-info/RECORD,,