explainthisrepo 0.22.5 → 0.23.0

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.
package/README.md CHANGED
@@ -195,8 +195,10 @@ explainthisrepo github.com/owner/repo
195
195
  explainthisrepo https://github.com/owner/repo/issues/123
196
196
  explainthisrepo https://github.com/owner/repo?tab=readme
197
197
  explainthisrepo git@github.com:owner/repo.git
198
+ explainthisrepo owner/repo/path/to/file.py
198
199
  explainthisrepo .
199
200
  explainthisrepo ./path/to/directory
201
+ explainthisrepo ./path/to/file.py
200
202
  ```
201
203
 
202
204
  All inputs are normalized internally to `owner/repo`.
@@ -344,6 +346,38 @@ When analyzing a file:
344
346
  - The explanation focuses on purpose, logic, and behavior
345
347
  - This makes it easy to understand unfamiliar files without scanning entire repositories.
346
348
 
349
+ ## GitHub File Analysis
350
+
351
+ ExplainThisRepo can analyze a single file directly from a GitHub repository without cloning it.
352
+
353
+ ```bash
354
+ explainthisrepo owner/repo/path/to/file.py
355
+ ```
356
+ Supports all explanation modes:
357
+
358
+ ```bash
359
+ explainthisrepo owner/repo/path/to/file.py --quick
360
+ explainthisrepo owner/repo/path/to/file.py --simple
361
+ explainthisrepo owner/repo/path/to/file.py --detailed
362
+ ```
363
+
364
+ When analyzing a GitHub file:
365
+ - The file is fetched directly via the GitHub API
366
+ - Only valid text files are processed (binary files are rejected)
367
+ - File size is capped to prevent unsafe or truncated analysis
368
+ - The explanation focuses on the file’s purpose, logic, and behavior
369
+
370
+ Input format must be:
371
+
372
+ ```bash
373
+ explainthisrepo owner/repo/path/to/file
374
+ ```
375
+
376
+ This is different from local file analysis:
377
+
378
+ ```bash
379
+ explainthisrepo ./path/to/file.py
380
+ ```
347
381
  ### Custom output
348
382
 
349
383
  `--output`, `-o` → Specify output file or directory (default: `EXPLAIN.md`)
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "explainthisrepo",
3
- "version": "0.22.5",
3
+ "version": "0.23.0",
4
4
  "description": "The fastest way to understand any codebase in plain English. Not blind AI summarization",
5
5
  "license": "MIT",
6
6
  "type": "module",