Skip to content

Comments

Comprehensive Documentation Audit and Update#192

Open
yacosta738 wants to merge 1 commit intomainfrom
docs-audit-and-update-7507857221125416417
Open

Comprehensive Documentation Audit and Update#192
yacosta738 wants to merge 1 commit intomainfrom
docs-audit-and-update-7507857221125416417

Conversation

@yacosta738
Copy link
Contributor

This PR performs a comprehensive audit and update of all documentation in the monorepo.

Key changes:

  • Root README.md: Added a clear monorepo structure overview, detailed setup instructions for both Rust and JS stacks, and a complete table of Makefile commands.
  • CLI Reference: Added documentation for the doctor and status commands.
  • Getting Started: Fixed GitHub release download examples to use version placeholders and correct filenames.
  • CONTRIBUTING: Synchronized root CONTRIBUTING.md and Starlight contributing.mdx with updated verification steps.
  • NPM README: Updated npm/agentsync/README.md to include all relevant CLI subcommands and align with the main project documentation.
  • Single Source of Truth: Created the missing .agents/AGENTS.md file to resolve broken symlinks and provide a template for agent instructions.
  • Journal: Updated scribe-journal.md to track completed documentation debt.

Verified with make verify-all.


PR created automatically by Jules for task 7507857221125416417 started by @yacosta738

- Updated root README.md with monorepo structure and setup instructions.
- Documented `doctor` and `status` commands in CLI reference.
- Synchronized CONTRIBUTING.md and contributing.mdx.
- Fixed download instructions with version placeholders in docs.
- Created missing .agents/AGENTS.md as the single source of truth.
- Updated npm/agentsync/README.md for consistency.
- Refined workspaces and development workflow documentation.

Co-authored-by: yacosta738 <33158051+yacosta738@users.noreply.github.com>
@google-labs-jules
Copy link
Contributor

👋 Jules, reporting for duty! I'm here to lend a hand with this pull request.

When you start a review, I'll add a 👀 emoji to each comment to let you know I've read it. I'll focus on feedback directed at me and will do my best to stay out of conversations between you and other bots or reviewers to keep the noise down.

I'll push a commit with your requested changes shortly after. Please note there might be a delay between these steps, but rest assured I'm on the job!

For more direct control, you can switch me to Reactive Mode. When this mode is on, I will only act on comments where you specifically mention me with @jules. You can find this option in the Pull Request section of your global Jules UI settings. You can always switch back!

New to Jules? Learn more at jules.google/docs.


For security, I will only act on instructions from the user who triggered this task.

@github-actions
Copy link

Hey there and thank you for opening this pull request!

We require pull request titles to follow the Conventional Commits specification and it looks like your proposed title needs to be adjusted.

Details:

No release type found in pull request title "Comprehensive Documentation Audit and Update". Add a prefix to indicate what kind of release this pull request corresponds to. For reference, see https://www.conventionalcommits.org/

Available types:
 - feat: A new feature
 - fix: A bug fix
 - docs: Documentation only changes
 - style: Changes that do not affect the meaning of the code (white-space, formatting, missing semi-colons, etc)
 - refactor: A code change that neither fixes a bug nor adds a feature
 - perf: A code change that improves performance
 - test: Adding missing tests or correcting existing tests
 - build: Changes that affect the build system or external dependencies (example scopes: gulp, broccoli, npm)
 - ci: Changes to our CI configuration files and scripts (example scopes: Travis, Circle, BrowserStack, SauceLabs)
 - chore: Other changes that don't modify src or test files
 - revert: Reverts a previous commit

@coderabbitai
Copy link
Contributor

coderabbitai bot commented Feb 21, 2026

📝 Walkthrough

Summary by CodeRabbit

Documentation

  • Documentation
    • Reorganized project documentation with updated setup instructions, development workflows, and monorepo structure overview.
    • Updated installation instructions with version-specific download patterns.
    • Added documentation for doctor and status CLI commands.
    • Streamlined contributor verification workflows with clarified command sequences.

Walkthrough

Documentation updates across contributor workflows, README, and website guides standardize build commands using make targets, introduce "distribution layer" terminology, document CLI commands (doctor and status), expand monorepo structure sections, and revise download instructions with version-specific placeholders.

Changes

Cohort / File(s) Summary
Contributor Workflow Updates
CONTRIBUTING.md, website/docs/src/content/docs/guides/contributing.mdx
Updated Rust and TypeScript verification steps to use make targets (make rust-test, make rust-build, make js-test, make js-build) and extracted formatting into a separate make fmt step.
Root Project Documentation
README.md, .agents/journal/scribe-journal.md
Enhanced README with Monorepo Structure section, Development Workflow details, updated prerequisites (Rust Edition 2024), and refactored setup instructions around single make target. Marked documentation debt items as completed in journal.
NPM Distribution Layer Docs
npm/agentsync/README.md
Added Status and Diagnostics subsection with doctor and status command examples, reorganized setup workflow to use make-based commands, updated terminology to describe AgentSync as Node.js distribution layer, and consolidated verification/testing instructions.
Website Getting Started & CLI Guides
website/docs/src/content/docs/guides/getting-started.mdx, website/docs/src/content/docs/index.mdx
Updated download instructions to use version-specific URLs with <version> placeholders, added explicit binary relocation steps and initialization examples (agentsync init/apply).
CLI Reference & Workspaces Docs
website/docs/src/content/docs/reference/cli.mdx, website/docs/src/content/docs/reference/workspaces.mdx
Expanded CLI reference with new doctor subcommand documentation and reformatted status section. Updated workspace descriptions to replace cargo/pnpm commands with make targets and clarify .agents/ directory as configuration source of truth.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~12 minutes

Poem

🐰 With docs so fine and scripts so neat,
Make targets dancing to their beat,
The doctor's here, the version's clear,
Our monorepo's structure bright and dear!
One hop, two hops, three documentation springs,
This PR brings such worthy things! 🌟

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Title check ✅ Passed The title 'Comprehensive Documentation Audit and Update' accurately reflects the PR's main purpose of auditing and updating documentation across the monorepo.
Description check ✅ Passed The description is well-related to the changeset, providing detailed information about documentation updates across multiple files and directories in the monorepo.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ 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 docs-audit-and-update-7507857221125416417

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 Report

User: @yacosta738
Status: Passed (12/13 metrics passed)

Metric Description Value Threshold Status
PR Merge Rate PRs merged vs closed 89% >= 30%
Repo Quality Repos with ≥100 stars 0 >= 0
Positive Reactions Positive reactions received 9 >= 1
Negative Reactions Negative reactions received 0 <= 5
Account Age GitHub account age 3038 days >= 30 days
Activity Consistency Regular activity over time 108% >= 0%
Issue Engagement Issues with community engagement 0 >= 0
Code Reviews Code reviews given to others 363 >= 0
Merger Diversity Unique maintainers who merged PRs 3 >= 0
Repo History Merge Rate Merge rate in this repo 0.8181818181818182 >= 0
Repo History Min PRs Previous PRs in this repo 86 >= 0
Profile Completeness Profile richness (bio, followers) 90 >= 0
Suspicious Patterns Spam-like activity detection 1 N/A

Contributor Report evaluates based on public GitHub activity. Analysis period: 2025-02-21 to 2026-02-21

Copy link
Contributor

@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: 6

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (1)
website/docs/src/content/docs/reference/cli.mdx (1)

167-226: ⚠️ Potential issue | 🟡 Minor

status and doctor sections are placed outside the ## Commands section

Both ### status and ### doctor appear after ## Global Flags, while every other command (init, apply, clean, skill, --version, --help) is a subsection of ## Commands. Readers navigating the Commands section will miss these two entries.

Move both subsections inside the ## Commands block (before ## Global Flags).

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@website/docs/src/content/docs/reference/cli.mdx` around lines 167 - 226, The
`### status` and `### doctor` command subsections are placed after `## Global
Flags` instead of under `## Commands`; move the entire `### status` and `###
doctor` blocks so they are nested inside the existing `## Commands` section
(place them before the `## Global Flags` block) to keep all command docs
together and maintain the existing order of other command entries.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@CONTRIBUTING.md`:
- Around line 14-16: Update the Rust code style guidance so both places
recommend the monorepo wrapper: replace the standalone "Use `cargo fmt` before
committing." (under "Code Style › Rust") with guidance to run the repository
formatter (e.g., "Use `make fmt` which wraps `cargo fmt`") and optionally note
that `cargo fmt` is invoked by `make fmt`; ensure the text references the same
phrasing "make fmt" as used earlier to avoid inconsistency.

In `@npm/agentsync/README.md`:
- Around line 123-128: Add a blank line before each fenced code block that
immediately follows a list-item label to satisfy MD031: for the three
occurrences under the list labels (the "Manage skills via CLI" block with the
three agentsync commands and the two blocks in the NPM package/build section),
insert a single empty line between the list-item line and the opening ```bash so
each fenced code block is surrounded by blank lines.
- Around line 122-128: Add a new "uninstall" subsection to the skill command
docs in cli.mdx mirroring the style of the existing "install" and "update"
sections: describe the command usage `agentsync skill uninstall <skill-id>`,
explain what it does, list any flags/behavior, and include a short example of
uninstalling a skill; ensure the subsection appears alongside the existing
install/update sections so the CLI reference includes the implemented `agentsync
skill uninstall` command.

In `@README.md`:
- Around line 451-452: The README currently pins Node.js to a specific patch
floor in the list entry '- [**Node.js**](https://nodejs.org/) (v24.13.0+
recommended)'; update this to use a minor-version floor instead (e.g., change
the text to '(v24+ recommended)' or '(v24 recommended)') so it doesn't imply an
unnecessary patch-level constraint—modify the Node.js line in the README
accordingly.

In `@website/docs/src/content/docs/guides/getting-started.mdx`:
- Around line 67-69: The curl and tar examples use the raw <version> placeholder
unquoted, which can be interpreted as shell redirection; update the curl -LO
invocation and the tar xzf invocation to wrap the URL and the generated filename
in quotes so shell metacharacters aren’t processed (e.g., quote the URL
containing v<version> and the filename pattern
agentsync-<version>-aarch64-apple-darwin.tar.gz); apply the same quoting to the
other platform snippet(s) that use agentsync-<version>-... (the Linux/macos
variations) so all instances of curl -LO and tar xzf referencing <version> are
quoted.

In `@website/docs/src/content/docs/reference/cli.mdx`:
- Around line 194-196: Update the exit-code labels in the docs so both sections
use the same bold style: locate the "status" section's plain-text "Exit codes:"
and change it to "**Exit codes:**", and also update the other occurrence
referenced (the "doctor" section or the lines around the second occurrence) so
both sections read "**Exit codes:**" followed by the code list; ensure the
formatting matches the existing bold style used in the "doctor" section.

---

Outside diff comments:
In `@website/docs/src/content/docs/reference/cli.mdx`:
- Around line 167-226: The `### status` and `### doctor` command subsections are
placed after `## Global Flags` instead of under `## Commands`; move the entire
`### status` and `### doctor` blocks so they are nested inside the existing `##
Commands` section (place them before the `## Global Flags` block) to keep all
command docs together and maintain the existing order of other command entries.

Comment on lines +14 to +16
- For Rust: `make rust-test`, `make rust-build`, and `cargo clippy`.
- For TypeScript: `make js-test` and `make js-build`.
- Formatting: `make fmt` (formats both Rust and TypeScript).
Copy link
Contributor

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟡 Minor

Minor inconsistency: cargo fmt vs make fmt in the same file

Line 16 directs contributors to use make fmt, but line 27 (Code Style › Rust) still says "Use cargo fmt before committing." Since make fmt wraps cargo fmt, both are correct, but the duplicate guidance can confuse new contributors about which invocation to prefer. Consider aligning line 27 to match the monorepo-preferred make fmt.

♻️ Suggested alignment
-Use `cargo fmt` before committing.
+Use `make fmt` (or `cargo fmt` directly) before committing.
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@CONTRIBUTING.md` around lines 14 - 16, Update the Rust code style guidance so
both places recommend the monorepo wrapper: replace the standalone "Use `cargo
fmt` before committing." (under "Code Style › Rust") with guidance to run the
repository formatter (e.g., "Use `make fmt` which wraps `cargo fmt`") and
optionally note that `cargo fmt` is invoked by `make fmt`; ensure the text
references the same phrasing "make fmt" as used earlier to avoid inconsistency.

Comment on lines +122 to +128
- Skills live under `.agents/skills/` in the project.
- **Manage skills via CLI**:
```bash
agentsync skill install <skill-id>
agentsync skill update <skill-id>
agentsync skill uninstall <skill-id>
```
Copy link
Contributor

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟡 Minor

🧩 Analysis chain

🏁 Script executed:

#!/bin/bash
# Check for uninstall command in Rust source
rg -n --type=rust -C3 'uninstall'

Repository: dallay/agentsync

Length of output: 9052


🏁 Script executed:

# Find and check cli.mdx for skill documentation
fd -type f -name 'cli.mdx' -o -name 'cli.md'

Repository: dallay/agentsync

Length of output: 230


🏁 Script executed:

# Get a broader view of the project structure
find . -type f -name '*.mdx' | head -20

Repository: dallay/agentsync

Length of output: 480


🏁 Script executed:

cat -n ./website/docs/src/content/docs/reference/cli.mdx

Repository: dallay/agentsync

Length of output: 8576


Add uninstall subsection to cli.mdx under the skill command section

The agentsync skill uninstall command is fully implemented in the Rust codebase, but it's missing from the CLI reference documentation. cli.mdx documents install and update subcommands (lines 102–122) and list (lines 124–137), but has no entry for uninstall. Add a corresponding subsection alongside install and update to keep documentation in sync with the implemented functionality.

🧰 Tools
🪛 markdownlint-cli2 (0.21.0)

[warning] 124-124: Fenced code blocks should be surrounded by blank lines

(MD031, blanks-around-fences)

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@npm/agentsync/README.md` around lines 122 - 128, Add a new "uninstall"
subsection to the skill command docs in cli.mdx mirroring the style of the
existing "install" and "update" sections: describe the command usage `agentsync
skill uninstall <skill-id>`, explain what it does, list any flags/behavior, and
include a short example of uninstalling a skill; ensure the subsection appears
alongside the existing install/update sections so the CLI reference includes the
implemented `agentsync skill uninstall` command.

Comment on lines +123 to +128
- **Manage skills via CLI**:
```bash
agentsync skill install <skill-id>
agentsync skill update <skill-id>
agentsync skill uninstall <skill-id>
```
Copy link
Contributor

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟡 Minor

MD031 — fenced code blocks missing surrounding blank lines (3 instances)

Static analysis (markdownlint MD031) flags lines 124, 147, and 152 for missing blank lines around fenced code blocks. All three occur directly beneath a list-item label line.

♻️ Proposed fix for all three occurrences
 - **Manage skills via CLI**:
+
   ```bash
   agentsync skill install <skill-id>
   agentsync skill update <skill-id>
   agentsync skill uninstall <skill-id>

```diff
 1. **Install dependencies and build core**:
+
    ```bash
    make install
    ```
+
 2. **Build the NPM package**:
+
    ```bash
    make js-build
    ```

Also applies to: 146-154

🧰 Tools
🪛 markdownlint-cli2 (0.21.0)

[warning] 124-124: Fenced code blocks should be surrounded by blank lines

(MD031, blanks-around-fences)

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@npm/agentsync/README.md` around lines 123 - 128, Add a blank line before each
fenced code block that immediately follows a list-item label to satisfy MD031:
for the three occurrences under the list labels (the "Manage skills via CLI"
block with the three agentsync commands and the two blocks in the NPM
package/build section), insert a single empty line between the list-item line
and the opening ```bash so each fenced code block is surrounded by blank lines.

Comment on lines +451 to +452
- [**Rust**](https://www.rust-lang.org/tools/install) (1.89+ recommended, Edition 2024)
- [**Node.js**](https://nodejs.org/) (v24.13.0+ recommended)
Copy link
Contributor

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟡 Minor

Overly specific Node.js patch-version constraint

v24.13.0+ is unusually precise for a prerequisite. Documenting a patch version as the floor means users on v24.14.0 or any later patch may wonder if that's intentional or a copy-paste of a engines field. A minor-version floor (v24) is the conventional form unless the specific patch version is materially required.

♻️ Suggested wording
-- [**Node.js**](https://nodejs.org/) (v24.13.0+ recommended)
+- [**Node.js**](https://nodejs.org/) (v24+ recommended)
📝 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
- [**Rust**](https://www.rust-lang.org/tools/install) (1.89+ recommended, Edition 2024)
- [**Node.js**](https://nodejs.org/) (v24.13.0+ recommended)
- [**Rust**](https://www.rust-lang.org/tools/install) (1.89+ recommended, Edition 2024)
- [**Node.js**](https://nodejs.org/) (v24+ recommended)
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@README.md` around lines 451 - 452, The README currently pins Node.js to a
specific patch floor in the list entry '- [**Node.js**](https://nodejs.org/)
(v24.13.0+ recommended)'; update this to use a minor-version floor instead
(e.g., change the text to '(v24+ recommended)' or '(v24 recommended)') so it
doesn't imply an unnecessary patch-level constraint—modify the Node.js line in
the README accordingly.

Comment on lines +67 to +69
# Replace <version> with the actual version number
curl -LO https://github.com/dallay/agentsync/releases/download/v<version>/agentsync-<version>-aarch64-apple-darwin.tar.gz
tar xzf agentsync-<version>-aarch64-apple-darwin.tar.gz
Copy link
Contributor

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟡 Minor

Quote URLs and filenames containing the <version> placeholder to avoid shell metacharacter misinterpretation.

< and > are stdin/stdout redirection operators in bash. Both curl -LO <url> and tar xzf <filename> snippets contain them unquoted. A copy-paste without substitution silently redirects I/O instead of producing a clear "replace the placeholder" error; quoting is also a general best practice for URLs in shell scripts.

📝 Proposed fix — macOS and Linux snippets
-curl -LO https://github.com/dallay/agentsync/releases/download/v<version>/agentsync-<version>-aarch64-apple-darwin.tar.gz
-tar xzf agentsync-<version>-aarch64-apple-darwin.tar.gz
+curl -LO "https://github.com/dallay/agentsync/releases/download/v<version>/agentsync-<version>-aarch64-apple-darwin.tar.gz"
+tar xzf "agentsync-<version>-aarch64-apple-darwin.tar.gz"
-curl -LO https://github.com/dallay/agentsync/releases/download/v<version>/agentsync-<version>-x86_64-unknown-linux-gnu.tar.gz
-tar xzf agentsync-<version>-x86_64-unknown-linux-gnu.tar.gz
+curl -LO "https://github.com/dallay/agentsync/releases/download/v<version>/agentsync-<version>-x86_64-unknown-linux-gnu.tar.gz"
+tar xzf "agentsync-<version>-x86_64-unknown-linux-gnu.tar.gz"

Also applies to: 76-78

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@website/docs/src/content/docs/guides/getting-started.mdx` around lines 67 -
69, The curl and tar examples use the raw <version> placeholder unquoted, which
can be interpreted as shell redirection; update the curl -LO invocation and the
tar xzf invocation to wrap the URL and the generated filename in quotes so shell
metacharacters aren’t processed (e.g., quote the URL containing v<version> and
the filename pattern agentsync-<version>-aarch64-apple-darwin.tar.gz); apply the
same quoting to the other platform snippet(s) that use agentsync-<version>-...
(the Linux/macos variations) so all instances of curl -LO and tar xzf
referencing <version> are quoted.

Comment on lines +194 to 196
Exit codes:
- `0` — no problems detected
- `1` — one or more issues found (suitable to fail CI builds)
Copy link
Contributor

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟡 Minor

Inconsistent exit-code heading style between status and doctor

status uses a plain-text label (Exit codes:) while doctor uses bold (**Exit codes**:). Normalise to one style across both sections.

♻️ Proposed fix — align `status` exit codes to bold style
-Exit codes:
+**Exit codes**:
 - `0` — no problems detected
 - `1` — one or more issues found (suitable to fail CI builds)

Also applies to: 224-226

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@website/docs/src/content/docs/reference/cli.mdx` around lines 194 - 196,
Update the exit-code labels in the docs so both sections use the same bold
style: locate the "status" section's plain-text "Exit codes:" and change it to
"**Exit codes:**", and also update the other occurrence referenced (the "doctor"
section or the lines around the second occurrence) so both sections read "**Exit
codes:**" followed by the code list; ensure the formatting matches the existing
bold style used in the "doctor" section.

@yacosta738 yacosta738 marked this pull request as ready for review February 21, 2026 16:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant