|
1 | 1 | import argparse |
| 2 | +import importlib.metadata |
| 3 | + |
2 | 4 | from .time_travel import fetch_time_travel_id, set_time_travel_active_state |
3 | 5 |
|
4 | 6 |
|
| 7 | +def version_command(): |
| 8 | + try: |
| 9 | + version = importlib.metadata.version("agentops") |
| 10 | + print(f"AgentOps version: {version}") |
| 11 | + except importlib.metadata.PackageNotFoundError: |
| 12 | + print("AgentOps package not found. Are you in development mode?") |
| 13 | + |
| 14 | + |
5 | 15 | def main(): |
6 | 16 | parser = argparse.ArgumentParser(description="AgentOps CLI") |
7 | | - subparsers = parser.add_subparsers(dest="command") |
8 | | - |
9 | | - timetravel_parser = subparsers.add_parser("timetravel", help="Time Travel Debugging commands", aliases=["tt"]) |
10 | | - timetravel_parser.add_argument( |
11 | | - "branch_name", |
12 | | - type=str, |
13 | | - nargs="?", |
14 | | - help="Given a branch name, fetches the cache file for Time Travel Debugging. Turns on feature by default", |
15 | | - ) |
16 | | - timetravel_parser.add_argument( |
17 | | - "--on", |
18 | | - action="store_true", |
19 | | - help="Turns on Time Travel Debugging", |
20 | | - ) |
21 | | - timetravel_parser.add_argument( |
22 | | - "--off", |
23 | | - action="store_true", |
24 | | - help="Turns off Time Travel Debugging", |
25 | | - ) |
| 17 | + subparsers = parser.add_subparsers(dest="command", help="Available commands") |
| 18 | + |
| 19 | + # Version command |
| 20 | + version_parser = subparsers.add_parser("version", help="Show AgentOps version") |
| 21 | + |
| 22 | + # Time travel command |
| 23 | + time_travel_parser = subparsers.add_parser("time-travel", help="Time travel related commands") |
| 24 | + time_travel_parser.add_argument("--id", help="Get time travel ID", action="store_true") |
| 25 | + time_travel_parser.add_argument("--off", help="Turn off time travel", action="store_true") |
26 | 26 |
|
27 | 27 | args = parser.parse_args() |
28 | 28 |
|
29 | | - if args.command in ["timetravel", "tt"]: |
30 | | - if args.branch_name: |
31 | | - fetch_time_travel_id(args.branch_name) |
32 | | - if args.on: |
33 | | - set_time_travel_active_state(True) |
| 29 | + if args.command == "version": |
| 30 | + version_command() |
| 31 | + elif args.command == "time-travel": |
| 32 | + if args.id: |
| 33 | + ttd_id = None # This would typically come from somewhere |
| 34 | + print(fetch_time_travel_id(ttd_id)) |
34 | 35 | if args.off: |
35 | 36 | set_time_travel_active_state(False) |
| 37 | + |
| 38 | + |
| 39 | +if __name__ == "__main__": |
| 40 | + main() |
0 commit comments