Skip to content

docs: sync after KB store + scheduler PRs (#155 / #156)#157

Merged
mabry1985 merged 1 commit into
mainfrom
docs/sync-after-kb-and-scheduler
Apr 28, 2026
Merged

docs: sync after KB store + scheduler PRs (#155 / #156)#157
mabry1985 merged 1 commit into
mainfrom
docs/sync-after-kb-and-scheduler

Conversation

@mabry1985
Copy link
Copy Markdown
Contributor

@mabry1985 mabry1985 commented Apr 28, 2026

Summary

Doc sweep cleaning up stale claims after #155 (default KB store + memory tools) and #156 (default scheduler + 3 tools). Audit found 8 issues across 7 files; all addressed in one commit.

What was stale

Severity File Issue
factual-error docs/reference/starter-tools.md "Nine tools ship" → twelve. Missing scheduler tool sections.
factual-error docs/tutorials/first-agent.md "All nine starter tools" + missing Scheduler from middleware list
factual-error docs/tutorials/first-tool.md "five tools that ship"
missing-coverage docs/reference/environment-variables.md Zero coverage of WORKSTACEAN_*, SCHEDULER_*, KNOWLEDGE_DB_PATH, AUDIT_PATH
missing-coverage docs/guides/fork-the-template.md Only listed 4 keyless tools
missing-coverage docs/guides/customize-and-deploy.md Same — no mention of memory or scheduler tools
missing-coverage README.md Starter tools row listed 9

Notable additions

  • starter-tools.md — three new tool sections (schedule_task, list_schedules, cancel_schedule) with signatures, output formats, and multi-agent isolation notes.
  • environment-variables.md — three new sections (Knowledge store, Audit log, Scheduler) covering 8 env vars previously absent. Includes a protoLabs-operators callout for the ava-node Workstacean + secrets-manager pointer.
  • first-agent.md — wizard description now lists all 12 tools and 4 middleware toggles.

Test plan

  • mkdocs serve (or whatever the project uses) renders cleanly — no broken anchor links.
  • Spot-check the starter-tools page: every tool name present, signatures match tools/lg_tools.py and scheduler/local.py.
  • Spot-check env-variables page: every var matches what server.py::_build_scheduler and knowledge/store.py::_resolve_path actually read.

🤖 Generated with Claude Code

Summary by CodeRabbit

Documentation

  • Expanded documentation to cover all 12 default tools (up from 9), including three scheduler tools
  • Added comprehensive environment variable configuration reference for knowledge store, audit, and scheduler middleware
  • Updated setup tutorials with scheduler configuration, database paths, and middleware checklist information
  • Clarified automatic tool inclusion behavior based on middleware configuration settings

After PRs #155 (default KB store + memory tools) and #156 (default
scheduler), the docs claimed nine tools, missed scheduler tools
entirely in the reference, and skipped scheduler env vars. This pass
syncs every stale claim flagged by the audit.

Updates:

- docs/reference/starter-tools.md
  - Corrected count: nine → twelve
  - New tool sections: schedule_task, list_schedules, cancel_schedule
    (signatures, output formats, multi-agent isolation notes)
  - "adding your own" snippet now threads scheduler= through
    get_all_tools alongside knowledge_store=
  - Related links include the scheduler guide

- docs/reference/environment-variables.md
  - New "Knowledge store" section: KNOWLEDGE_DB_PATH override + the
    ~/.protoagent fallback
  - New "Audit log" section: AUDIT_PATH (used by evals/verify.py)
  - New "Scheduler" section: WORKSTACEAN_API_BASE/KEY/TOPIC_PREFIX,
    SCHEDULER_DB_DIR/INVOKE_URL/DISABLED, plus the protoLabs
    operators callout pointing at the ava node + secrets manager
    for the actual key

- docs/tutorials/first-agent.md
  - Wizard description now mentions all twelve tools and the four
    middleware toggles (added Scheduler alongside Audit/Memory/
    Knowledge)

- docs/tutorials/first-tool.md
  - "Where to go next" link copy: five → twelve

- docs/guides/fork-the-template.md
  - Tool list paragraph corrected to all twelve, with the
    binding-by-backend split called out

- docs/guides/customize-and-deploy.md
  - "Add domain tools" section now mentions memory + scheduler tool
    binding and the middleware.* toggles for opt-out

- README.md
  - Starter tools row now lists all twelve, grouped 4+5+3 with
    backend bindings shown

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented Apr 28, 2026

Walkthrough

Documentation is updated across six guides and reference files to reflect expansion of default starter tools from 4–9 to 12, including three new scheduler tools (schedule_task, list_schedules, cancel_schedule). The get_all_tools() function signature is documented with a new scheduler parameter, and environment variables for middleware configuration (Knowledge, Audit, Scheduler) are now explicitly documented.

Changes

Cohort / File(s) Summary
Starter tools reference
docs/reference/starter-tools.md
Updated function signature to get_all_tools(knowledge_store=None, scheduler=None). Added documentation for three new scheduler tools with inputs, outputs, and isolation behavior. Updated example code to reflect conditional tool inclusion based on parameter presence.
Guides
docs/guides/customize-and-deploy.md, docs/guides/fork-the-template.md
Expanded default tool set documentation from 4–9 to 12 tools. Added details on memory-tool and scheduler-tool binding, configuration-driven omission behavior based on middleware flags, and clarified tool exposure via get_all_tools() and _build_scheduler_tools().
Environment variables reference
docs/reference/environment-variables.md
Added documentation for Knowledge store (KNOWLEDGE_DB_PATH, opt-out flag), Audit log (AUDIT_PATH), and Scheduler environment variables (backend selection, local persistence/invoke config, SCHEDULER_DISABLED escape hatch). Clarified YAML-based control via middleware.scheduler.
Tutorials
docs/tutorials/first-agent.md, docs/tutorials/first-tool.md
Updated setup wizard tool count from 9 to 12. Added scheduler database path and storage fallback documentation. Expanded middleware checklist to include Scheduler. Updated reference links to reflect new default tool count.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~12 minutes

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Title check ✅ Passed The title accurately and concisely summarizes the main change: syncing documentation across multiple files to reflect recent KB store and scheduler PRs.
Description check ✅ Passed The description comprehensively covers the scope, rationale, and test approach, though the test plan lacks explicit checkmarks indicating verification completion.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

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

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch docs/sync-after-kb-and-scheduler

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

Copy link
Copy Markdown

@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

🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@docs/reference/starter-tools.md`:
- Around line 193-199: The doc string for cancel_schedule and the implementation
message are inconsistent: the docs say "Canceled <id>." but the code returns "✓
Cancelled {job_id}". Update one side so both use the same spelling (choose
either "Canceled" or "Cancelled")—for example, change the implementation string
that currently returns "✓ Cancelled {job_id}" in the cancel_schedule-related
function to match the docs, or update the docs to match the implementation;
ensure you modify the exact formatted return string (e.g., the f-string "✓
Cancelled {job_id}") and/or the doc text "Canceled <id>." so they are identical.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: ASSERTIVE

Plan: Pro

Run ID: 73e5896f-b8f2-41ac-a17d-949491bd80aa

📥 Commits

Reviewing files that changed from the base of the PR and between ec86865 and 16337ca.

⛔ Files ignored due to path filters (1)
  • README.md is excluded by !*.md
📒 Files selected for processing (6)
  • docs/guides/customize-and-deploy.md
  • docs/guides/fork-the-template.md
  • docs/reference/environment-variables.md
  • docs/reference/starter-tools.md
  • docs/tutorials/first-agent.md
  • docs/tutorials/first-tool.md

Comment on lines +193 to +199

```python
@tool
async def cancel_schedule(job_id: str) -> str
```

Cancel a scheduled job by id. Returns `"Canceled <id>."` or `"Error: no such job <id>."`.
Copy link
Copy Markdown

Choose a reason for hiding this comment

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

🧹 Nitpick | 🔵 Trivial

Minor spelling inconsistency: "Cancelled" vs "Canceled".

Line 199 documents the output as "Canceled <id>." (American spelling), but the code at tools/lg_tools.py:475 returns f"✓ Cancelled {job_id}" (British spelling). Consider standardizing on one spelling throughout the codebase.

📝 Align documentation with code
-Cancel a scheduled job by id. Returns `"Canceled <id>."` or `"Error: no such job <id>."`.
+Cancel a scheduled job by id. Returns `"✓ Cancelled <id>."` or an error message when the job doesn't exist.
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@docs/reference/starter-tools.md` around lines 193 - 199, The doc string for
cancel_schedule and the implementation message are inconsistent: the docs say
"Canceled <id>." but the code returns "✓ Cancelled {job_id}". Update one side so
both use the same spelling (choose either "Canceled" or "Cancelled")—for
example, change the implementation string that currently returns "✓ Cancelled
{job_id}" in the cancel_schedule-related function to match the docs, or update
the docs to match the implementation; ensure you modify the exact formatted
return string (e.g., the f-string "✓ Cancelled {job_id}") and/or the doc text
"Canceled <id>." so they are identical.

@mabry1985
Copy link
Copy Markdown
Contributor Author

CodeRabbit's one finding is a hallucination — claims the implementation returns `"✓ Cancelled {job_id}"`, but the actual code at `tools/lg_tools.py:491` returns `f"Canceled {job_id}."` (no checkmark, US spelling) which already matches the docs verbatim. Verified by grep — no `Cancelled` or `✓` string exists anywhere in the file. Declining; nothing to fix.

Merging.

@mabry1985 mabry1985 merged commit bf2eb12 into main Apr 28, 2026
1 check passed
@mabry1985 mabry1985 deleted the docs/sync-after-kb-and-scheduler branch April 28, 2026 04:53
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