mirror of
https://github.com/langbot-app/LangBot.git
synced 2026-11-01 13:25:18 +08:00
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]>
This commit is contained in:
co-authored by
multica-agent
parent
a159b27b8e
commit
9ab64baa63
@@ -0,0 +1,25 @@
|
||||
"""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}')
|
||||
Reference in New Issue
Block a user