aboutsummaryrefslogtreecommitdiff
path: root/actions.py
diff options
context:
space:
mode:
Diffstat (limited to 'actions.py')
-rw-r--r--actions.py15
1 files changed, 15 insertions, 0 deletions
diff --git a/actions.py b/actions.py
index dfeebc3..589dd51 100644
--- a/actions.py
+++ b/actions.py
@@ -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)