Skip to content

Conversation

@Jamie-BitFlight
Copy link
Contributor

@Jamie-BitFlight Jamie-BitFlight commented Jan 28, 2026

  • Update tagline: "The docs generator for GitHub Actions"
  • Add Quick Start section with prominent one-liner
  • Add Features table highlighting 8 key capabilities
  • Improve package.json keywords for discoverability
  • Rewrite description to emphasize zero-config and dual-mode

https://claude.ai/code/session_018ofWYyu8DZbrnGzaUgWMEd

Summary by CodeRabbit

  • Documentation

    • Replaced short README with a centered hero, multi-section guide (Quick Start, Features, How It Works, expanded CLI usage, examples, branding) and an appended branding block; expanded parameter details and sample content blocks.
    • Updated product description and metadata for clearer discovery.
  • New Features

    • Automatic Table of Contents generation and updated, versioned CLI usage examples (v1.8.10) for clearer onboarding.

✏️ Tip: You can customize this high-level summary in your review settings.

- Update tagline: "The docs generator for GitHub Actions"
- Add Quick Start section with prominent one-liner
- Add Features table highlighting 8 key capabilities
- Improve package.json keywords for discoverability
- Rewrite description to emphasize zero-config and dual-mode

https://claude.ai/code/session_018ofWYyu8DZbrnGzaUgWMEd
Copilot AI review requested due to automatic review settings January 28, 2026 00:36
@coderabbitai
Copy link

coderabbitai bot commented Jan 28, 2026

Caution

Review failed

The pull request is closed.

Walkthrough

Adds a comprehensive README rewrite and package/action metadata edits, exposes an in-memory README accessor, and implements a new Table of Contents generator plus routing to invoke it.

Changes

Cohort / File(s) Summary
Documentation & Package Metadata
README.md, action.yml, package.json
Replaces README with a multi-section documentation layout (hero, Quick Start, Features, How It Works, TOC, expanded CLI usage, branding). Updates action.yml description to document the zero-config doc-generation workflow. Shortens package.json description and replaces keywords.
Readme editor API
src/readme-editor.ts
Adds getReadmeContent(): string to return the current in-memory README content without mutating state.
Section routing
src/sections/index.ts
Adds handling for a new contents section token and delegates to the TOC updater (updateContents).
TOC generator feature
src/sections/update-contents.ts
New module that extracts headers (skips code blocks and "contents" headers), normalizes anchors, computes relative indentation by heading level, emits a "## Table of Contents" block linking to anchors, logs progress, updates README via inputs.readmeEditor.updateSection, and exports default updateContents(sectionToken, inputs) returning the generated content record.

Sequence Diagram(s)

sequenceDiagram
  autonumber
  participant CLI as CLI / Action Trigger
  participant ReadmeEditor as ReadmeEditor
  participant TOC as updateContents
  participant Logger as LogTask

  CLI->>ReadmeEditor: getReadmeContent()
  ReadmeEditor-->>CLI: return README content
  CLI->>TOC: invoke updateContents(sectionToken, inputs)
  TOC->>Logger: log start
  TOC->>ReadmeEditor: parse content (extract headers)
  TOC-->>TOC: normalize headers -> anchors, build TOC markdown
  TOC->>Logger: log info / success
  TOC->>ReadmeEditor: updateSection('contents', generatedTOC)
  ReadmeEditor-->>TOC: acknowledge update
  TOC-->>CLI: return generated content record
Loading

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

🚥 Pre-merge checks | ✅ 2 | ❌ 1
❌ Failed checks (1 warning)
Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 50.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (2 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The PR title clearly aligns with the main objective of improving marketing positioning and the documentation changes (README updates, package.json keywords, and branding emphasis).

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch claude/review-repo-benefits-UUh9p

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@github-actions
Copy link
Contributor

github-actions bot commented Jan 28, 2026

Coverage Report

Status Category Percentage Covered / Total
🔵 Lines 47.12% 402 / 853
🔵 Statements 47.75% 414 / 867
🔵 Functions 62.28% 71 / 114
🔵 Branches 47.84% 200 / 418
File Coverage
File Stmts Branches Functions Lines Uncovered Lines
Changed Files
src/readme-editor.ts 5.55% 0% 0% 5.55% 28-120
src/sections/index.ts 0% 0% 0% 0% 21-61
src/sections/update-contents.ts 0% 0% 0% 0% 17-112
Generated in workflow #398 for commit ffb6d23 by the Vitest Coverage Report Action

Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Updates the project’s public-facing messaging to better position it as a zero-config documentation generator for GitHub Actions and improve npm discoverability.

Changes:

  • Refresh marketing copy/tagline across README.md, action.yml, and package.json.
  • Add a prominent Quick Start section and a features table to the README.
  • Update npm keywords to improve search/discoverability.

Reviewed changes

Copilot reviewed 3 out of 3 changed files in this pull request and generated 3 comments.

File Description
package.json Updates package description and expands keywords for discoverability.
action.yml Updates the Action’s Marketplace description/tagline.
README.md Adds Quick Start + Features section and refreshes top-level description copy.

package.json Outdated
"displayName": "bitflight-devops/github-action-readme-generator",
"version": "1.8.10",
"description": "This is a CLI tool and GitHub Action that reads in the details from a \nGitHub Action's `action.yml` file and updates the `README.md` file\nwith the `name`, `description`, `usage`, `inputs`, `outputs`, and\nexamples of the action.\nConfiguration can be provided via a `.ghadocs.json` file stored in the\nroot directory of the Action's repository, via the command line when\nusing the cli, or via the `with:` section of this Action.\n\n\nThis tool uses markdown comments as delimiting tokens within the `README.md`\nfile to determine where to place the generated content.\n\n[`README.example.md`](README.example.md) example with all fields filled in, and no other free-form content.",
"description": "The docs generator for GitHub Actions. Auto-syncs action.yml to README.md with 8 sections: inputs, outputs, usage, badges, branding & more. One command, zero config. Works as CLI or GitHub Action.",
Copy link

Copilot AI Jan 28, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The description claims the tool updates "8 sections", but the generator currently only updates 7 sections (title, branding, description, usage, inputs, outputs, badges). contents is included in README_SECTIONS (src/constants.ts) but has no updater in src/sections/index.ts and is skipped as an unknown section, so this statement is inaccurate. Consider either implementing a contents section updater or adjusting the copy to avoid/adjust the section count.

Suggested change
"description": "The docs generator for GitHub Actions. Auto-syncs action.yml to README.md with 8 sections: inputs, outputs, usage, badges, branding & more. One command, zero config. Works as CLI or GitHub Action.",
"description": "The docs generator for GitHub Actions. Auto-syncs action.yml to README.md with rich sections for inputs, outputs, usage, badges, branding & more. One command, zero config. Works as CLI or GitHub Action.",

Copilot uses AI. Check for mistakes.
action.yml Outdated
name: GitHub Action's Readme Generator
author: Jamie Nelson <jamie@bitflight.io>
description: 📓 Effortlessly sync action.yml to README.md. Auto-generates inputs, outputs & usage docs, ensuring docs match code.
description: 📓 The docs generator for GitHub Actions. Auto-syncs action.yml README.md with 8 sections including inputs, outputs, usage, badges & branding. One command, zero config.
Copy link

Copilot AI Jan 28, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This description says the generator updates "8 sections". In the current implementation, contents is listed as a section (src/constants.ts) but there is no handler for it in src/sections/index.ts, so only 7 sections are actually updated. Please either add support for a contents updater or change the description to avoid stating an incorrect section count.

Suggested change
description: 📓 The docs generator for GitHub Actions. Auto-syncs action.yml → README.md with 8 sections including inputs, outputs, usage, badges & branding. One command, zero config.
description: 📓 The docs generator for GitHub Actions. Auto-syncs action.yml → README.md with sections including inputs, outputs, usage, badges & branding. One command, zero config.

Copilot uses AI. Check for mistakes.
README.md Outdated
<!-- start description -->

📓 Effortlessly sync action.yml to README.md. Auto-generates inputs, outputs & usage docs, ensuring docs match code.
📓 The docs generator for GitHub Actions. Auto-syncs action.yml README.md with 8 sections including inputs, outputs, usage, badges & branding. One command, zero config.
Copy link

Copilot AI Jan 28, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The README description states the tool updates "8 sections". The code currently updates 7 sections; contents is present in README_SECTIONS but has no updater (see src/sections/index.ts), so it is skipped. Please adjust the wording (e.g., remove the explicit count) or implement contents generation so the claim matches behavior.

Suggested change
📓 The docs generator for GitHub Actions. Auto-syncs action.yml → README.md with 8 sections including inputs, outputs, usage, badges & branding. One command, zero config.
📓 The docs generator for GitHub Actions. Auto-syncs action.yml → README.md with key sections including inputs, outputs, usage, badges & branding. One command, zero config.

Copilot uses AI. Check for mistakes.
Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Fix all issues with AI agents
In `@README.md`:
- Around line 31-35: The Features table in README.md uses lowercase "markdown"
in the Description cells; update each occurrence to capitalize the proper noun
"Markdown" (e.g., change "Auto-generates markdown table from `action.yml`
inputs" to "Auto-generates Markdown table from `action.yml` inputs", and
similarly for the outputs row) so the table entries for "Inputs Table", "Outputs
Table", and "Usage Example" use "Markdown" consistently.

README.md Outdated
Comment on lines 31 to 35
| | Feature | Description |
| :----------------: | ------------------- | ------------------------------------------------------- |
| :white_check_mark: | **Inputs Table** | Auto-generates markdown table from `action.yml` inputs |
| :white_check_mark: | **Outputs Table** | Auto-generates markdown table from `action.yml` outputs |
| :white_check_mark: | **Usage Example** | Creates ready-to-copy YAML workflow snippet |
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor

Capitalize “Markdown” in the Features table.

LanguageTool flagged the proper noun usage.

📝 Proposed fix
-| :white_check_mark: | **Inputs Table**    | Auto-generates markdown table from `action.yml` inputs  |
-| :white_check_mark: | **Outputs Table**   | Auto-generates markdown table from `action.yml` outputs |
+| :white_check_mark: | **Inputs Table**    | Auto-generates Markdown table from `action.yml` inputs  |
+| :white_check_mark: | **Outputs Table**   | Auto-generates Markdown table from `action.yml` outputs |
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
| | Feature | Description |
| :----------------: | ------------------- | ------------------------------------------------------- |
| :white_check_mark: | **Inputs Table** | Auto-generates markdown table from `action.yml` inputs |
| :white_check_mark: | **Outputs Table** | Auto-generates markdown table from `action.yml` outputs |
| :white_check_mark: | **Usage Example** | Creates ready-to-copy YAML workflow snippet |
| | Feature | Description |
| :----------------: | ------------------- | ------------------------------------------------------- |
| :white_check_mark: | **Inputs Table** | Auto-generates Markdown table from `action.yml` inputs |
| :white_check_mark: | **Outputs Table** | Auto-generates Markdown table from `action.yml` outputs |
| :white_check_mark: | **Usage Example** | Creates ready-to-copy YAML workflow snippet |
🧰 Tools
🪛 LanguageTool

[uncategorized] ~33-~33: Did you mean the formatting language “Markdown” (= proper noun)?
Context: ... | Inputs Table | Auto-generates markdown table from action.yml inputs | | :wh...

(MARKDOWN_NNP)


[uncategorized] ~34-~34: Did you mean the formatting language “Markdown” (= proper noun)?
Context: ... | Outputs Table | Auto-generates markdown table from action.yml outputs | | :wh...

(MARKDOWN_NNP)

🤖 Prompt for AI Agents
In `@README.md` around lines 31 - 35, The Features table in README.md uses
lowercase "markdown" in the Description cells; update each occurrence to
capitalize the proper noun "Markdown" (e.g., change "Auto-generates markdown
table from `action.yml` inputs" to "Auto-generates Markdown table from
`action.yml` inputs", and similarly for the outputs row) so the table entries
for "Inputs Table", "Outputs Table", and "Usage Example" use "Markdown"
consistently.

- Add update-contents.ts to generate TOC from README headers
- Add getReadmeContent() method to ReadmeEditor class
- Wire up contents case in sections/index.ts switch statement
- The "8 sections" claim is now accurate (was 7 before)

https://claude.ai/code/session_018ofWYyu8DZbrnGzaUgWMEd
function headerToAnchor(text: string): string {
return text
.toLowerCase()
.replace(/[^\w\s-]/g, '') // Remove special characters except hyphens
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🚫 [eslint] <unicorn/prefer-string-replace-all> reported by reviewdog 🐶
Prefer String#replaceAll() over String#replace().

Suggested change
.replace(/[^\w\s-]/g, '') // Remove special characters except hyphens
.replaceAll(/[^\w\s-]/g, '') // Remove special characters except hyphens

return text
.toLowerCase()
.replace(/[^\w\s-]/g, '') // Remove special characters except hyphens
.replace(/\s+/g, '-') // Replace spaces with hyphens
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🚫 [eslint] <unicorn/prefer-string-replace-all> reported by reviewdog 🐶
Prefer String#replaceAll() over String#replace().

Suggested change
.replace(/\s+/g, '-') // Replace spaces with hyphens
.replaceAll(/\s+/g, '-') // Replace spaces with hyphens

.toLowerCase()
.replace(/[^\w\s-]/g, '') // Remove special characters except hyphens
.replace(/\s+/g, '-') // Replace spaces with hyphens
.replace(/-+/g, '-') // Collapse multiple hyphens
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🚫 [eslint] <unicorn/prefer-string-replace-all> reported by reviewdog 🐶
Prefer String#replaceAll() over String#replace().

Suggested change
.replace(/-+/g, '-') // Collapse multiple hyphens
.replaceAll(/-+/g, '-') // Collapse multiple hyphens

.replace(/[^\w\s-]/g, '') // Remove special characters except hyphens
.replace(/\s+/g, '-') // Replace spaces with hyphens
.replace(/-+/g, '-') // Collapse multiple hyphens
.replace(/^-|-$/g, ''); // Remove leading/trailing hyphens
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🚫 [eslint] <unicorn/prefer-string-replace-all> reported by reviewdog 🐶
Prefer String#replaceAll() over String#replace().

Suggested change
.replace(/^-|-$/g, ''); // Remove leading/trailing hyphens
.replaceAll(/^-|-$/g, ''); // Remove leading/trailing hyphens

* @param {string} content - The markdown content.
* @returns {Array<{level: number, text: string}>} Array of header objects.
*/
function extractHeaders(content: string): Array<{ level: number; text: string }> {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🚫 [eslint] <@typescript-eslint/array-type> reported by reviewdog 🐶
Array type using 'Array' is forbidden. Use 'T[]' instead.

Suggested change
function extractHeaders(content: string): Array<{ level: number; text: string }> {
function extractHeaders(content: string): { level: number; text: string }[] {

* @returns {Array<{level: number, text: string}>} Array of header objects.
*/
function extractHeaders(content: string): Array<{ level: number; text: string }> {
const headers: Array<{ level: number; text: string }> = [];
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🚫 [eslint] <@typescript-eslint/array-type> reported by reviewdog 🐶
Array type using 'Array' is forbidden. Use 'T[]' instead.

Suggested change
const headers: Array<{ level: number; text: string }> = [];
const headers: { level: number; text: string }[] = [];

let text = headerMatch[2].trim();

// Remove inline images and other markdown formatting from header text
text = text.replace(/<img[^>]*>/g, '').trim();
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🚫 [eslint] <unicorn/prefer-string-replace-all> reported by reviewdog 🐶
Prefer String#replaceAll() over String#replace().

Suggested change
text = text.replace(/<img[^>]*>/g, '').trim();
text = text.replaceAll(/<img[^>]*>/g, '').trim();

// Remove inline images and other markdown formatting from header text
text = text.replace(/<img[^>]*>/g, '').trim();
// Remove markdown links but keep the text
text = text.replace(/\[([^\]]+)\]\([^)]+\)/g, '$1');
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🚫 [eslint] <unicorn/prefer-string-replace-all> reported by reviewdog 🐶
Prefer String#replaceAll() over String#replace().

Suggested change
text = text.replace(/\[([^\]]+)\]\([^)]+\)/g, '$1');
text = text.replaceAll(/\[([^\]]+)\]\([^)]+\)/g, '$1');

// Remove inline images and other markdown formatting from header text
text = text.replace(/<img[^>]*>/g, '').trim();
// Remove markdown links but keep the text
text = text.replace(/\[([^\]]+)\]\([^)]+\)/g, '$1');
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ [eslint] <optimize-regex/optimize-regex> reported by reviewdog 🐶
/[([^\]]+)]([^)]+)/g can be optimized to /[([^\]]+)]([^)]+)/g

Suggested change
text = text.replace(/\[([^\]]+)\]\([^)]+\)/g, '$1');
text = text.replace(/\[([^\]]+)]\([^)]+\)/g, '$1');

Comment on lines +98 to +99
content.push('## Table of Contents');
content.push('');
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🚫 [eslint] <unicorn/prefer-single-call> reported by reviewdog 🐶
Do not call Array#push() multiple times.

Suggested change
content.push('## Table of Contents');
content.push('');
content.push('## Table of Contents', '');

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 2

🤖 Fix all issues with AI agents
In `@src/sections/update-contents.ts`:
- Around line 97-105: The TOC generation must disambiguate duplicate anchors
like GitHub; update the loop that builds anchors for tocHeaders to track
occurrences (e.g., a Map keyed by the base anchor from headerToAnchor) and for
each header compute base = headerToAnchor(header.text), increment its count, and
if count > 1 append a numeric suffix of `-${count - 1}` to the anchor so
subsequent duplicates become anchor-1, anchor-2, etc., then push the TOC line
using that unique anchor; apply this logic where tocHeaders, headerToAnchor,
minLevel and content are used to build the TOC.
- Around line 85-90: The function currently returns early when tocHeaders.length
=== 0 which leaves the README's TOC unchanged; instead, set ret[sectionToken] =
'' and do not return early—allow the function to follow the same code path that
writes/updates sections to the README (i.e., use the existing README
update/write logic used when headers exist) so the empty TOC is persisted;
remove the early return and ensure the existing write/update call is invoked
with the ret map so the stale TOC is cleared.

Comment on lines +85 to +90
if (tocHeaders.length === 0) {
log.info('No headers found for table of contents');
const ret: Record<string, string> = {};
ret[sectionToken] = '';
return ret;
}
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor

Clear the TOC section when no headers are found.
Right now you return early without updating the README, which leaves stale TOC content in place.

🐛 Proposed fix
   if (tocHeaders.length === 0) {
     log.info('No headers found for table of contents');
+    inputs.readmeEditor.updateSection(sectionToken, '');
     const ret: Record<string, string> = {};
     ret[sectionToken] = '';
     return ret;
   }
🤖 Prompt for AI Agents
In `@src/sections/update-contents.ts` around lines 85 - 90, The function currently
returns early when tocHeaders.length === 0 which leaves the README's TOC
unchanged; instead, set ret[sectionToken] = '' and do not return early—allow the
function to follow the same code path that writes/updates sections to the README
(i.e., use the existing README update/write logic used when headers exist) so
the empty TOC is persisted; remove the early return and ensure the existing
write/update call is invoked with the ret map so the stale TOC is cleared.

Comment on lines +97 to +105
// Generate TOC entries
content.push('## Table of Contents');
content.push('');

for (const header of tocHeaders) {
const indent = ' '.repeat(header.level - minLevel);
const anchor = headerToAnchor(header.text);
content.push(`${indent}- [${header.text}](#${anchor})`);
}
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor

Handle duplicate headings to avoid broken TOC links.
GitHub disambiguates duplicate anchors with numeric suffixes; current logic produces duplicate anchors.

🐛 Proposed fix
   // Generate TOC entries
   content.push('## Table of Contents');
   content.push('');
 
+  const slugCounts = new Map<string, number>();
   for (const header of tocHeaders) {
     const indent = '  '.repeat(header.level - minLevel);
-    const anchor = headerToAnchor(header.text);
-    content.push(`${indent}- [${header.text}](#${anchor})`);
+    const baseAnchor = headerToAnchor(header.text);
+    const count = slugCounts.get(baseAnchor) ?? 0;
+    slugCounts.set(baseAnchor, count + 1);
+    const anchor = count === 0 ? baseAnchor : `${baseAnchor}-${count}`;
+    content.push(`${indent}- [${header.text}](#${anchor})`);
   }
🤖 Prompt for AI Agents
In `@src/sections/update-contents.ts` around lines 97 - 105, The TOC generation
must disambiguate duplicate anchors like GitHub; update the loop that builds
anchors for tocHeaders to track occurrences (e.g., a Map keyed by the base
anchor from headerToAnchor) and for each header compute base =
headerToAnchor(header.text), increment its count, and if count > 1 append a
numeric suffix of `-${count - 1}` to the anchor so subsequent duplicates become
anchor-1, anchor-2, etc., then push the TOC line using that unique anchor; apply
this logic where tocHeaders, headerToAnchor, minLevel and content are used to
build the TOC.

Jamie-BitFlight and others added 3 commits January 27, 2026 19:59
- Add hero.png at top of README (optimized from 951KB to 907KB)
- Add bitflight-devops.png at bottom (optimized from 4.1MB to 958KB)
- Rename images from IMG_9050/IMG_9051 to descriptive names
- Total image size reduced from 5MB to 1.9MB

https://claude.ai/code/session_018ofWYyu8DZbrnGzaUgWMEd
- Replace "zero config" with "sensible defaults, highly configurable"
- Update Features table: "Zero Config" → "Easy Setup"
- Remove "zero-config" from package.json keywords
- Accurate: users need to add section markers and can configure via .ghadocs.json

https://claude.ai/code/session_018ofWYyu8DZbrnGzaUgWMEd
@Jamie-BitFlight Jamie-BitFlight merged commit 950d774 into main Jan 28, 2026
10 checks passed
@Jamie-BitFlight Jamie-BitFlight deleted the claude/review-repo-benefits-UUh9p branch January 28, 2026 01:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants