Repository URL to install this package:
|
Version:
0.1.4 ▾
|
#!/usr/bin/env python
"""AgentIO CLI entry point"""
import argparse
import sys
import agentio
def main():
parser = argparse.ArgumentParser(description="AgentIO Trace Collection and Visualization")
subparsers = parser.add_subparsers(dest="command", help="Commands")
# Serve command
serve_parser = subparsers.add_parser("serve", help="Run as trace collection server")
serve_parser.add_argument("--host", default="0.0.0.0", help="Host to bind (default: 0.0.0.0)")
serve_parser.add_argument("--port", type=int, default=7860, help="Port to bind (default: 7860)")
serve_parser.add_argument("--db", help="Database path (overrides --project)")
serve_parser.add_argument("--project", help="Project name to serve (looks for ~/.agentio/{project}.db)")
serve_parser.add_argument("--token", help="Auth token for API access")
# Export command
export_parser = subparsers.add_parser("export", help="Export traces to file")
export_parser.add_argument("output", help="Output file path")
export_parser.add_argument("--format", choices=["json", "csv", "parquet"],
default="json", help="Export format (default: json)")
export_parser.add_argument("--project", default="default", help="Project to export (default: default)")
# Show command
show_parser = subparsers.add_parser("show", help="Launch trace visualization dashboard")
show_parser.add_argument("--project", default="default", help="Project name")
args = parser.parse_args()
if args.command == "serve":
agentio.serve(
host=args.host,
port=args.port,
db_path=args.db,
project=args.project,
auth_token=args.token
)
elif args.command == "export":
agentio.export(
args.output,
format=args.format,
project=args.project
)
elif args.command == "show":
agentio.show(project=args.project)
# Keep running
try:
import time
while True:
time.sleep(1)
except KeyboardInterrupt:
print("\nShutting down...")
else:
parser.print_help()
sys.exit(1)
if __name__ == "__main__":
main()