Skip to content

Commit e91d0b2

Browse files
docs: update tools, sync, and CI documentation
* ci: add workflow to sync OSA submodule via auto-PR Receives repository_dispatch from the OSA repo on push to main, updates the submodule ref, and opens/updates a PR. Includes weekly scheduled fallback. * docs: add BIDS and EEGLAB tool pages, rewrite tools overview and HED docs - Create tools/bids.md documenting all BIDS tools including lookup_bep - Create tools/eeglab.md documenting docstring search, FAQ search, and knowledge tools - Rewrite tools/index.md to reflect multi-community architecture with community-scoped tool naming pattern - Fix tools/hed.md: add missing knowledge tools, fix return value types - Add new tool pages to mkdocs.yml navigation * docs: rewrite knowledge-sync.md for multi-community architecture - Add --community/-c flag to all sync commands - Document new sync types: docstrings, mailman, faq, beps - Fix automated sync section: schedules are per-community YAML config, not environment variables - Update agent tools section with community-scoped names - Fix troubleshooting: remove incorrect gh CLI requirement - Update database location to {community_id}.db pattern * docs: update CLI reference, schema, and registry pages - cli-reference: add new sync subcommands, fix env var table - schema-reference: add mailman, docstrings, faq_generation, sync, budget, and maintainers config sections - registry/index: show BIDS and EEGLAB as implemented - extensions: fix tool loading order, add docstring/FAQ tools - quick-start, local-testing: fix incorrect --citations flag usage * docs: fix review findings in tool and sync pages Fix doc counts (BIDS: 49->46, EEGLAB: 22->25), add missing setup category to EEGLAB on-demand docs breakdown, and expand abbreviations on first use (FTS5, PR, ICA, FAQ, LLM, LSL) across tool and sync pages.
1 parent 52d9f40 commit e91d0b2

13 files changed

Lines changed: 996 additions & 301 deletions

File tree

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
name: Sync OSA Submodule
2+
3+
on:
4+
repository_dispatch:
5+
types: [osa-updated]
6+
schedule:
7+
- cron: "0 6 * * 1" # Weekly Monday 6am UTC as fallback
8+
workflow_dispatch:
9+
10+
jobs:
11+
sync:
12+
runs-on: ubuntu-latest
13+
permissions:
14+
contents: write
15+
pull-requests: write
16+
17+
steps:
18+
- name: Checkout
19+
uses: actions/checkout@v4
20+
with:
21+
submodules: true
22+
fetch-depth: 0
23+
24+
- name: Update OSA submodule
25+
run: |
26+
git submodule update --remote osa
27+
echo "Updated OSA submodule to $(git -C osa rev-parse --short HEAD)"
28+
29+
- name: Create Pull Request
30+
uses: peter-evans/create-pull-request@v7
31+
with:
32+
commit-message: "sync: update OSA submodule to latest"
33+
title: "sync: update OSA submodule to latest"
34+
body: |
35+
Automated update of the OSA submodule to track latest changes.
36+
37+
Triggered by: ${{ github.event_name }}
38+
branch: sync/osa-submodule
39+
labels: sync
40+
delete-branch: true

docs/osa/cli-reference.md

Lines changed: 31 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -201,24 +201,40 @@ Options:
201201

202202
### `osa sync`
203203

204-
Sync knowledge sources (GitHub issues/PRs, academic papers). Requires server dependencies.
205-
See [Knowledge Sync](knowledge-sync.md) for details.
204+
Sync knowledge sources for community assistants. Requires server dependencies. All subcommands accept `--community/-c` to specify the target community.
205+
206+
See [Knowledge Sync](knowledge-sync.md) for full documentation.
206207

207208
```bash
208-
# Initialize database
209-
osa sync init
209+
# Initialize database for a community
210+
osa sync init --community hed
210211

211212
# Sync GitHub issues/PRs
212-
osa sync github
213+
osa sync github --community bids
214+
215+
# Sync academic papers (with citation tracking)
216+
osa sync papers --community bids
217+
218+
# Sync code docstrings (MATLAB/Python)
219+
osa sync docstrings --community eeglab --language matlab
220+
221+
# Sync mailing list archives
222+
osa sync mailman --community eeglab
213223

214-
# Sync academic papers
215-
osa sync papers
224+
# Generate FAQ from mailing list threads
225+
osa sync faq --community eeglab --estimate
216226

217-
# Sync everything
227+
# Sync BIDS Extension Proposals
228+
osa sync beps --community bids
229+
230+
# Sync everything for all communities
218231
osa sync all
219232

220233
# Check status
221234
osa sync status
235+
236+
# Search knowledge database
237+
osa sync search "validation error" --community hed
222238
```
223239

224240
## Configuration
@@ -273,11 +289,15 @@ These are only relevant when running the server (`osa serve`):
273289
| `LANGFUSE_PUBLIC_KEY` | LangFuse public key | Optional |
274290
| `LANGFUSE_SECRET_KEY` | LangFuse secret key | Optional |
275291
| `SYNC_ENABLED` | Enable automated knowledge sync | `true` |
276-
| `SYNC_GITHUB_CRON` | GitHub sync schedule (cron) | `0 2 * * *` |
277-
| `SYNC_PAPERS_CRON` | Papers sync schedule (cron) | `0 3 * * 0` |
278-
| `GITHUB_TOKEN` | GitHub token for sync | Optional |
292+
| `GITHUB_TOKEN` | GitHub token for sync (higher rate limits) | Optional |
293+
| `SEMANTIC_SCHOLAR_API_KEY` | Semantic Scholar API key | Optional |
294+
| `PUBMED_API_KEY` | PubMed/NCBI API key | Optional |
295+
| `OPENALEX_EMAIL` | Email for OpenALEX polite pool | Optional |
279296
| `DATA_DIR` | Data directory for knowledge DB | Platform-specific |
280297

298+
!!! note "Sync Schedules"
299+
Sync schedules are configured per-community in each community's `config.yaml` under the `sync` key, not via environment variables. See [Knowledge Sync](knowledge-sync.md) for details.
300+
281301
## Examples
282302

283303
### Quick Start

0 commit comments

Comments
 (0)