diff options
Diffstat (limited to 'actions.py')
| -rw-r--r-- | actions.py | 15 |
1 files changed, 15 insertions, 0 deletions
@@ -106,6 +106,20 @@ def _shell(args: JSON, config: AgentConfig) -> JSON: } +def _mypy(args: JSON, config: AgentConfig) -> JSON: + '{"action": "mypy", "path": PATH} - run mypy type checking on PATH' + try: + res = subprocess.run( + ["mypy", args["path"]], + cwd=config.workdir, + capture_output=True, + text=True, + ) + return {"status": "success", "stdout": res.stdout, "stderr": res.stderr} + except Exception as e: + return {"status": "error", "reason": f"An unexpected error occurred: {e}"} + + ls = Action("ls", _ls.__doc__ or "", _ls) read = Action("read", _read.__doc__ or "", _read) write = Action( @@ -121,3 +135,4 @@ shell = Action( _shell, formatter=lambda args: f"shell command `{args['command']}`", ) +mypy = Action("mypy", _mypy.__doc__ or "", _mypy) |
