Files
LangBot/scripts/export_execution_catalog.py
T
RockChinQandmultica-agent 9ab64baa63 feat(api-tools): route plugin actions through ExecutionAPI facade and accept SDK 0.7.19 payloads
LANG-231: Route all plugin/runner actions to Core through ExecutionAPI facade.
Support real SDK 0.7.19 payloads across query, model, storage, and RAG schemas.
Add integration routing test for all 69 operations and catalog export script.

Co-authored-by: multica-agent <[email protected]>
2026-10-31 21:00:04 +08:00

26 lines
762 B
Python

"""Export ExecutionAPI catalog snapshot as JSON."""
from __future__ import annotations
import json
import sys
from pathlib import Path
from langbot.pkg.api.application.execution import ExecutionAPI
def export_catalog(output_path: Path) -> list[dict]:
api = ExecutionAPI(None)
catalog = api.catalog()
output_path.parent.mkdir(parents=True, exist_ok=True)
with open(output_path, 'w', encoding='utf-8') as f:
json.dump(catalog, f, indent=2, ensure_ascii=False)
f.write('\n')
return catalog
if __name__ == '__main__':
destination = Path(sys.argv[1]) if len(sys.argv) > 1 else Path('execution_api_catalog.json')
catalog = export_catalog(destination)
print(f'Exported {len(catalog)} operations to {destination}')