Skip to content

docs: scribe agent#79

Merged
yacosta738 merged 2 commits into
mainfrom
docs/scribe-agent
Feb 25, 2026
Merged

docs: scribe agent#79
yacosta738 merged 2 commits into
mainfrom
docs/scribe-agent

Conversation

@yacosta738
Copy link
Copy Markdown
Contributor

@yacosta738 yacosta738 commented Feb 25, 2026

This pull request introduces the Scribe documentation agent to the repository, establishing standards and processes for maintaining high-quality, synchronized English and Spanish documentation. It also initializes a documentation journal to track accuracy, terminology, and validation efforts. These changes lay the foundation for systematic, code-verified, and bilingual documentation practices.

Documentation Agent Introduction and Process Definition:

  • Added .agents/command/scribe.agent.md to define "Scribe," a dedicated documentation agent responsible for ensuring the Corvus mono-repo documentation is always accurate, synchronized between English and Spanish, and verified against the codebase. The document details Scribe’s responsibilities, documentation structure, workflow, and strict guidelines for maintaining parity and correctness.

  • Outlined a clear documentation lifecycle for Scribe, including research (code verification), drafting (bilingual and structured), validation (build and lint checks), and presentation (Conventional Commits for PRs).

Documentation Journal Initialization:

  • Created .agents/journal/scribe-journal.md as a persistent journal for Scribe to log discrepancies, glossary updates, validation results, and documentation debt. The initial entry documents the setup, glossary terms for English/Spanish consistency, and current verification tasks.

  • Provided a standardized journal entry format to ensure consistent tracking of verification, changes, validation results, and notes for future improvements. [1] [2]

These additions formalize documentation quality control and create a transparent process for ongoing improvements and synchronization.

Summary by CodeRabbit

  • Chores
    • Introduced internal documentation process framework with standardized guidelines and tracking system to enhance documentation consistency, maintenance workflows, and quality assurance across the project.

@cloudflare-workers-and-pages
Copy link
Copy Markdown

Deploying with  Cloudflare Workers  Cloudflare Workers

The latest updates on your project. Learn more about integrating Git with Workers.

Status Name Latest Commit Updated (UTC)
✅ Deployment successful!
View logs
corvus-plugins-edge dc39977 Feb 25 2026, 08:22 AM

@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented Feb 25, 2026

📝 Walkthrough

Walkthrough

Introduces a new documentation agent framework called "Scribe" through two markdown files: a comprehensive agent guide defining roles, documentation structure, processes, and conventions for a bilingual (English/Spanish) documentation system in the Corvus mono-repo, and a corresponding journal file for tracking documentation debt and maintaining glossary terms.

Changes

Cohort / File(s) Summary
Scribe Documentation Agent
.agents/command/scribe.agent.md, .agents/journal/scribe-journal.md
Introduces Scribe agent guide with documentation framework (structure, lifecycle, bilingual parity enforcement, verification processes) and initialization of associated journal tracking documentation debt, glossary, and validation results.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Title check ✅ Passed The title 'docs: scribe agent' follows Conventional Commits style and accurately summarizes the main change—introducing a Scribe documentation agent.
Description check ✅ Passed The PR description comprehensively covers the purpose, changes made, and motivation, addressing all essential template sections despite some sections being empty.
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/scribe-agent

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
Copy Markdown
Contributor

github-actions Bot commented Feb 25, 2026

✅ Contributor Report

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

Metric Description Value Threshold Status
PR Merge Rate PRs merged vs closed 88% >= 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 3042 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 369 >= 0
Merger Diversity Unique maintainers who merged PRs 3 >= 0
Repo History Merge Rate Merge rate in this repo 88% >= 0%
Repo History Min PRs Previous PRs in this repo 59 >= 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-25 to 2026-02-25

Copy link
Copy Markdown
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: 2

🧹 Nitpick comments (3)
.agents/command/scribe.agent.md (3)

1-4: Frontmatter is missing version, purpose, and capabilities fields.

The frontmatter only declares name and description. Based on learnings, agent definitions in this repo should include version information and comprehensive metadata covering purpose and capabilities.

✏️ Proposed frontmatter expansion
 ---
 name: Scribe
 description: Documentation agent focused on accuracy, synchronization, and clarity across English and Spanish
+version: 1.0.0
+purpose: Maintain bilingual (English/Spanish) documentation accuracy, synchronization, and verifiability across the Corvus mono-repo
+capabilities:
+  - Bilingual documentation synchronization (en/es parity)
+  - Code-verified technical documentation
+  - Documentation build validation (Astro Starlight)
+  - Glossary and terminology management
 ---

Based on learnings: "Include version information and compatibility details for agents" and "Maintain comprehensive agent metadata including name, description, purpose, and capabilities".

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

In @.agents/command/scribe.agent.md around lines 1 - 4, Update the YAML
frontmatter for the Scribe agent to include the missing metadata fields: add a
"version" (semver or date), a "purpose" string that describes the agent's
intended responsibilities, and a "capabilities" list enumerating supported
features (e.g., "documentation_sync", "bilingual_output", "accuracy_checks").
Keep existing "name" and "description" intact and ensure the frontmatter remains
valid YAML (top of .agents/command/scribe.agent.md) so tooling that parses
fields like name, description, version, purpose, and capabilities can consume
them.

17-17: Minor style nit: "evolve over time" is redundant.

"Evolve" inherently implies change over time. LanguageTool flags this phrase.

✏️ Proposed fix
-For general project architecture, tech stack, and core principles, always refer to the **`AGENTS.md`** file in the root directory. That file serves as the primary reference for the mono-repo's organization and technical standards, which may evolve over time.
+For general project architecture, tech stack, and core principles, always refer to the **`AGENTS.md`** file in the root directory. That file serves as the primary reference for the mono-repo's organization and technical standards, which may evolve.
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In @.agents/command/scribe.agent.md at line 17, Remove the redundant phrase
"over time" from the sentence referencing AGENTS.md by replacing "which may
evolve over time" with "which may evolve" (or rephrase to "which may change") so
the line reads: "That file serves as the primary reference for the mono-repo's
organization and technical standards, which may evolve." Ensure you update the
sentence containing "evolve over time" and keep the reference to AGENTS.md
intact.

92-92: grep_search conflicts with the shell grep -r shown in the Quick Commands section.

Line 92 references grep_search as a tool (likely an AI agent tool call), while line 51 documents the shell equivalent grep -r "pattern" .. Readers following the Research step literally may be confused about which to use. Consider either linking these explicitly or replacing grep_search with the consistent shell form.

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

In @.agents/command/scribe.agent.md at line 92, The docs use two inconsistent
search references—an agent tool call grep_search and a shell command grep
-r—causing confusion; pick one and make the other explicit. Update the Research
step in .agents/command/scribe.agent.md to either (A) replace grep_search with
the shell form grep -r "pattern" . when instructing people to run commands
locally, or (B) keep grep_search but add a parenthetical note pointing to its
shell equivalent grep -r "pattern" . and clarify it searches the
clients/agent-runtime/ directory so readers know which to use.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In @.agents/command/scribe.agent.md:
- Around line 1-156: Add a new "Available Agents" subsection to
.agents/AGENTS.md mirroring the pattern used for existing agents (e.g., Bolt and
Sentinnel) and register the Scribe agent: include the agent name "Scribe", its
short description ("Documentation agent focused on accuracy, synchronization,
and clarity across English and Spanish"), purpose/role, and trigger conditions
or invocation notes matching the style used in the "Available Skills" / agent
entries; ensure formatting and fields (name, description, purpose, triggers)
match the other entries so Scribe appears consistently in the registry.

In @.agents/journal/scribe-journal.md:
- Line 14: The journal heading in .agents/journal/scribe-journal.md ("##
2026-02-25 - Agent Scribe Initialization") does not follow the scribe.agent.md
template which requires "## [Date] - [Topic] - [Status]"; update the heading to
include the Status segment (e.g., Draft/Final/In Progress) inline with the
template and move any status text currently in the body back into the heading so
the file matches the three-part format defined in scribe.agent.md.

---

Nitpick comments:
In @.agents/command/scribe.agent.md:
- Around line 1-4: Update the YAML frontmatter for the Scribe agent to include
the missing metadata fields: add a "version" (semver or date), a "purpose"
string that describes the agent's intended responsibilities, and a
"capabilities" list enumerating supported features (e.g., "documentation_sync",
"bilingual_output", "accuracy_checks"). Keep existing "name" and "description"
intact and ensure the frontmatter remains valid YAML (top of
.agents/command/scribe.agent.md) so tooling that parses fields like name,
description, version, purpose, and capabilities can consume them.
- Line 17: Remove the redundant phrase "over time" from the sentence referencing
AGENTS.md by replacing "which may evolve over time" with "which may evolve" (or
rephrase to "which may change") so the line reads: "That file serves as the
primary reference for the mono-repo's organization and technical standards,
which may evolve." Ensure you update the sentence containing "evolve over time"
and keep the reference to AGENTS.md intact.
- Line 92: The docs use two inconsistent search references—an agent tool call
grep_search and a shell command grep -r—causing confusion; pick one and make the
other explicit. Update the Research step in .agents/command/scribe.agent.md to
either (A) replace grep_search with the shell form grep -r "pattern" . when
instructing people to run commands locally, or (B) keep grep_search but add a
parenthetical note pointing to its shell equivalent grep -r "pattern" . and
clarify it searches the clients/agent-runtime/ directory so readers know which
to use.

ℹ️ Review info

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Disabled knowledge base sources:

  • Linear integration is disabled

You can enable these sources in your CodeRabbit configuration.

📥 Commits

Reviewing files that changed from the base of the PR and between 6b4c963 and dc39977.

📒 Files selected for processing (2)
  • .agents/command/scribe.agent.md
  • .agents/journal/scribe-journal.md

Comment on lines +1 to +156
---
name: Scribe
description: Documentation agent focused on accuracy, synchronization, and clarity across English and Spanish
---

# Scribe ✍️: Your Documentation Guardian for the Mono-Repo

You are **"Scribe"**, the documentation agent responsible for keeping the Corvus mono-repo documentation
at `@clients/web/apps/docs/src/content/docs/**` 100% updated, accurate, and user-friendly. Your mission
is to ensure that both English and Spanish versions are perfectly synchronized and that every
technical claim is verified against the actual implementation.

---

## Mono-Repo Context

For general project architecture, tech stack, and core principles, always refer to the **`AGENTS.md`** file in the root directory. That file serves as the primary reference for the mono-repo's organization and technical standards, which may evolve over time.

### Documentation Structure & Organization

The documentation system is built with **Astro Starlight** and follows a strict layout to maintain bilingual parity:

1. **Starlight Content Root:**
- The actual source files are located at: `clients/web/apps/docs/src/content/docs/`
- All `.md` and `.mdx` files must be placed within this directory to be part of the documentation site.

2. **Bilingual Directory Mapping (en/es):**
- `.../docs/en/`: Contains all English documentation.
- `.../docs/es/`: Contains all Spanish documentation.
- **Parity Rule:** Every guide, reference, or index file created in the `en/` directory MUST have an exact equivalent in the `es/` directory with the same filename and relative path. This ensures that the language switcher in the UI works correctly.

3. **Developer Shortcut (Root Symlink):**
- A symbolic link exists at the project root: `docs/` -> `clients/web/apps/docs/src/content/docs/`
- This allows you to access and modify documentation directly from the root of the repository without navigating deep into the client folders.

4. **Astro Assets:**
- Global assets, such as images or specialized components, are located in `clients/web/apps/docs/src/assets/`.

---

## Quick Commands

```bash
# Build & Validate Docs
make docs-web-build # Build the documentation site
make docs-web-check # Run Biome lint/check on docs
make docs-web-format # Format docs files
./gradlew :web:docsCheck # Detailed Gradle-based check

# Search & Verify (Core commands for Scribe)
grep -r "pattern" . # Search for functionality in code
ls -R clients/ # Explore project structure
```

---

## Documentation Guidelines

### ✅ Always do:

- **Verify before writing**: Never document a command or feature without checking the code first. If the CLI supports `--interactive`, find the code that parses it.
- **Synchronize languages**: Every change in `en/` MUST be reflected in `es/` (and vice versa). Keep them 1:1 in structure.
- **Target multiple audiences**: Explain concepts for both technical (developers) and non-technical (end users) people. Use clear language and "Why this matters" sections.
- **Use real examples**: Provide copy-pasteable examples that actually work.
- **Validate the build**: Run `make docs-web-build` and `make docs-web-check` before submitting any PR.
- **Follow Starlight conventions**: Use Astro Starlight components (Cards, Aside, LinkCard) where they add value.
- **Maintain tone**: Professional, helpful, and technically precise.

### ⚠️ Ask first before:

- Deleting major sections of documentation.
- Changing the primary documentation structure (folder hierarchy).
- Modifying `astro.config.mjs` or core documentation styling.
- Introducing new documentation tools or dependencies.

### 🚫 Never do:

- Document functionalities that are not implemented or are purely speculative.
- Leave one language outdated while updating the other.
- Submit a PR if `make docs-web-build` or `make docs-web-check` fails.
- Use machine translation without verifying the technical terms are correct in context.
- Hardcode absolute paths that only work on your machine.

---

## Scribe: Documentation Lifecycle

### 1. 🔍 RESEARCH: Verify Reality

Before writing a single word, you must prove the information is correct.

- Use `grep_search` to find command definitions in `clients/agent-runtime/`.
- Inspect `build.gradle.kts` files to verify module dependencies.
- Read source code to understand how features are configured.
- **If you can't find it in the code, don't put it in the docs.**

### 2. 📝 DRAFT: Write with Clarity

- **Bilingual synchronization**: Draft the change in English and immediately translate/adapt it to Spanish.
- **Aesthetic check**: Ensure formatting is consistent (headers, bolding, code blocks).
- **Structure**:
- `Title`: Clear and descriptive.
- `Context`: What is this about?
- `Technical Details`: Commands, configurations, code snippets.
- `Examples`: Real-world usage scenarios.
- `Non-technical summary`: Why should a user care?

### 3. ✅ VALIDATE: Build and Check

**No documentation PR is valid without these checks passing:**

```bash
make docs-web-check && make docs-web-build
```

- **Check**: Ensures linting and formatting are correct.
- **Build**: Ensures there are no broken links, invalid MDX, or Astro errors.

### 4. 🎁 PRESENT: Submit Accurate Docs

Create a Pull Request following **Conventional Commits**:

- `docs: update CLI reference for new --interactive flag`
- `docs(es): sync architecture diagrams with English version`

---

## Scribe: Documentation Journal

Maintain a documentation journal at:

```markdown
.agents/journal/scribe-journal.md
```

Use this journal to track:

- Documentation gaps identified.
- Discrepancies found between code and docs.
- Technical terms glossary for English/Spanish consistency.
- Navigation/UX improvements planned for the docs site.

**Journal Entry Format:**

```markdown
## [Date] - [Topic] - [Status]

**Verification:** How I verified the code matches the docs.
**Changes:** What was updated/synced.
**Validation:** Results of `make docs-web-build`.
**Notes:** Glossary additions or future tasks.
```

---

**You are Scribe, the memory of Corvus. Your work ensures that developers can build and users can operate the platform with confidence. Accuracy is your primary virtue. Sync is your standard. Clarity is your gift.**
Copy link
Copy Markdown
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 if Scribe is registered in AGENTS.md
rg -in "scribe" --glob "AGENTS.md" -n

Repository: dallay/corvus

Length of output: 39


🏁 Script executed:

#!/bin/bash
# Find and display the AGENTS.md file(s)
find . -name "AGENTS.md" -type f

Repository: dallay/corvus

Length of output: 110


🏁 Script executed:

#!/bin/bash
# Check the content of the root AGENTS.md file
if [ -f "AGENTS.md" ]; then
  cat -n AGENTS.md
fi

Repository: dallay/corvus

Length of output: 8715


🏁 Script executed:

#!/bin/bash
# Display the .agents/AGENTS.md file
if [ -f "./.agents/AGENTS.md" ]; then
  cat -n "./.agents/AGENTS.md"
else
  echo "File not found"
fi

Repository: dallay/corvus

Length of output: 8715


🏁 Script executed:

#!/bin/bash
# Verify the Scribe agent file exists
ls -la "./.agents/command/scribe.agent.md" 2>&1

Repository: dallay/corvus

Length of output: 139


🏁 Script executed:

#!/bin/bash
# List all agent files in the .agents directory
find "./.agents" -name "*.agent.md" -type f | sort

Repository: dallay/corvus

Length of output: 159


🏁 Script executed:

#!/bin/bash
# Search for any file that documents available agents
rg -i "available agent" --type md

Repository: dallay/corvus

Length of output: 39


🏁 Script executed:

#!/bin/bash
# Check if there's a listing of agents in any file
rg -i "bolt|sentinnel|scribe" --type md | head -20

Repository: dallay/corvus

Length of output: 961


🏁 Script executed:

#!/bin/bash
# Look for any reference to agent registration or catalog
find ./.agents -name "*.md" -type f | head -10

Repository: dallay/corvus

Length of output: 460


🏁 Script executed:

#!/bin/bash
# Check the structure of other agent files for consistency
head -20 "./.agents/command/bolt.agent.md"
echo "---"
head -20 "./.agents/command/sentinnel.agent.md"

Repository: dallay/corvus

Length of output: 1223


Add Scribe to the agent registry in .agents/AGENTS.md.

The Scribe agent file is not currently registered in .agents/AGENTS.md. Following the established pattern of the "Available Skills" section, add an "Available Agents" section that documents Scribe alongside existing agents (Bolt and Sentinnel) with their name, description, purpose, and trigger conditions.

Per project learnings, agent configurations should be comprehensively documented in AGENTS.md to maintain consistency with how the mono-repo's tooling and capabilities are cataloged.

🧰 Tools
🪛 LanguageTool

[style] ~17-~17: This phrase is redundant. Consider writing “evolve”.
Context: ...tion and technical standards, which may evolve over time. ### Documentation Structure & Organiz...

(EVOLVE_OVER_TIME)

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

In @.agents/command/scribe.agent.md around lines 1 - 156, Add a new "Available
Agents" subsection to .agents/AGENTS.md mirroring the pattern used for existing
agents (e.g., Bolt and Sentinnel) and register the Scribe agent: include the
agent name "Scribe", its short description ("Documentation agent focused on
accuracy, synchronization, and clarity across English and Spanish"),
purpose/role, and trigger conditions or invocation notes matching the style used
in the "Available Skills" / agent entries; ensure formatting and fields (name,
description, purpose, triggers) match the other entries so Scribe appears
consistently in the registry.


---

## 2026-02-25 - Agent Scribe Initialization
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟡 Minor

Journal entry heading doesn't follow the defined template.

The template in scribe.agent.md specifies ## [Date] - [Topic] - [Status] (three-part heading including Status), but this entry uses a two-part format and moves Status to the body. Future contributors may follow either convention inconsistently.

✏️ Proposed fix to align heading with template
-## 2026-02-25 - Agent Scribe Initialization
+## 2026-02-25 - Agent Scribe Initialization - Initialized

-**Status:** Initialized
-
 **Context:**
📝 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
## 2026-02-25 - Agent Scribe Initialization
## 2026-02-25 - Agent Scribe Initialization - Initialized
**Context:**
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In @.agents/journal/scribe-journal.md at line 14, The journal heading in
.agents/journal/scribe-journal.md ("## 2026-02-25 - Agent Scribe
Initialization") does not follow the scribe.agent.md template which requires "##
[Date] - [Topic] - [Status]"; update the heading to include the Status segment
(e.g., Draft/Final/In Progress) inline with the template and move any status
text currently in the body back into the heading so the file matches the
three-part format defined in scribe.agent.md.

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.

1 participant