## codio + indexio MCP friction points discovered during labpy session Several
codio + indexio MCP friction points discovered during labpy session¶
Several pain points encountered while managing the sirocampus shared codelib during a multi-day labpy development session.
1. codio_add_urls(clone=True) doesn't actually clone¶
codio_add_urls(urls=["https://github.com/circstat/pycircstat2"], clone=True) returned success but:
- No clone appeared on disk
- path field in catalog.yml was left empty
- repos.yml entry was created but missing local_path and default_branch
Had to manually: git clone → edit repos.yml to add local_path/default_branch → edit catalog.yml to add path → re-sync.
Expected: clone=True should clone to the configured codelib directory, populate local_path in repos.yml, and set path in catalog.yml automatically.
2. indexio_sources_sync doesn't pick up new libs without path field¶
After codio_add_urls, the source sync skipped pycircstat2 because catalog.yml had no path. The sync should either:
- Warn that a managed library has no local path
- Or derive the path from repos.yml local_path if catalog path is empty
3. schedule_queue(timeout=) doesn't propagate to execution¶
Scheduled tasks with timeout=3600 and timeout=5400 but they ran with the default 1800s and timed out. This happened twice:
- 751c15df33d7 — parity batch, specified timeout=3600, killed at 1800s
- 7fa1c8e2b02d — buzcode audit batch, specified timeout=5400, killed at 1800s
Only enqueue_task(timeout=5400) worked correctly. The timeout parameter in schedule_queue appears to be ignored.
4. No incremental build command for single source¶
indexio_build(sources=["codio-src-pycircstat2"]) — the sources parameter accepts a list but there's a type validation issue when passing from MCP (string vs list). The update=True flag works as a workaround but rebuilds all changed sources, not just the one you want.
5. codio_add_urls doesn't set capabilities or priority¶
New libraries are added with empty capabilities: [] and default priority: tier2. For a well-known library like pycircstat2 (circular statistics), the GitHub topics and description contain enough info to auto-populate capabilities like ["circular-statistics", "directional-statistics"].
Summary of manual workarounds needed¶
For adding one library with indexing:
1. codio_add_urls (catalog + repos, but no clone)
2. Manual git clone to codelib directory
3. Manual edit of repos.yml (add local_path, default_branch)
4. Manual edit of catalog.yml (add path)
5. indexio_sources_sync (now picks it up)
6. indexio_build(update=True)
Should be: codio_add_urls(clone=True) → indexio_build(update=True). Two steps, not six.
Source context: labpy¶
Labpy (labpy): sirota lab main python package; initiated as a translation of labbox Matlab code into python
Recent commits:
aa05bf1 Update labbox↔labpy correspondence map after parity batches
6029157 Docs homepage: replace admonition boxes with sphinx-design grid cards for Diataxis quadrants
b222d6a batch task 1/2: Audit: buzcode + HippoCookBook value extraction for labpy (pixecog-driven)