aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorOgulcan Celik <ogulcancelik@gmail.com>2026-06-22 00:02:56 +0300
committerOgulcan Celik <ogulcancelik@gmail.com>2026-06-22 00:03:21 +0300
commita5182282a490cfb60b22776257edc5ac0fce6adc (patch)
tree648555f1d5ce4696bc22f9a8e22682f8c7f46c93
parent003bef7592d6df68f7cf0806d5796ed64478d68c (diff)
fix: support devin hook on python 3.9
refs #719
-rw-r--r--docs/next/website/src/content/docs/integrations.mdx2
-rw-r--r--docs/next/website/src/content/docs/session-state.mdx2
-rw-r--r--src/integration/assets/devin/herdr-agent-state.sh4
-rw-r--r--src/integration/mod.rs2
4 files changed, 6 insertions, 4 deletions
diff --git a/docs/next/website/src/content/docs/integrations.mdx b/docs/next/website/src/content/docs/integrations.mdx
index 1aef7336..605a55d1 100644
--- a/docs/next/website/src/content/docs/integrations.mdx
+++ b/docs/next/website/src/content/docs/integrations.mdx
@@ -58,7 +58,7 @@ Custom socket integrations can also report state when they define state that is
Some integrations report native agent session references. Herdr uses official session references to resume Claude Code, Codex, Devin CLI, Droid, Kimi Code CLI, Qoder CLI, Cursor Agent CLI, GitHub Copilot CLI, Pi, OMP, Hermes Agent, OpenCode, and Kilo Code CLI panes after a Herdr server restart unless `[session] resume_agents_on_restore = false` disables it.
-Native session restore requires current Herdr integrations: Pi integration version `2`, OMP version `3`, Claude Code version `6`, Codex version `5`, GitHub Copilot CLI version `2`, Devin CLI version `1`, Droid version `2`, Kimi Code CLI version `3`, Qoder CLI version `2`, Cursor Agent CLI version `1`, OpenCode version `5`, Kilo Code CLI version `1`, or Hermes Agent version `2`. Check installed versions with `herdr integration status`.
+Native session restore requires current Herdr integrations: Pi integration version `2`, OMP version `3`, Claude Code version `6`, Codex version `5`, GitHub Copilot CLI version `2`, Devin CLI version `2`, Droid version `2`, Kimi Code CLI version `3`, Qoder CLI version `2`, Cursor Agent CLI version `1`, OpenCode version `5`, Kilo Code CLI version `1`, or Hermes Agent version `2`. Check installed versions with `herdr integration status`.
## Pi
diff --git a/docs/next/website/src/content/docs/session-state.mdx b/docs/next/website/src/content/docs/session-state.mdx
index 8996093b..0c7f68ac 100644
--- a/docs/next/website/src/content/docs/session-state.mdx
+++ b/docs/next/website/src/content/docs/session-state.mdx
@@ -72,7 +72,7 @@ Native session restore requires these Herdr integration versions or newer:
| Codex | `5` | `codex resume <id>` |
| Cursor Agent CLI | `1` | `cursor-agent --resume <id>` |
| GitHub Copilot CLI | `2` | `copilot --resume=<id>` |
-| Devin CLI | `1` | `devin --resume <id>` |
+| Devin CLI | `2` | `devin --resume <id>` |
| Droid | `2` | `droid --resume <id>` |
| Kimi Code CLI | `3` | `kimi --session <id>` |
| Qoder CLI | `2` | `qodercli --resume <id>` |
diff --git a/src/integration/assets/devin/herdr-agent-state.sh b/src/integration/assets/devin/herdr-agent-state.sh
index 83f8c190..86249b88 100644
--- a/src/integration/assets/devin/herdr-agent-state.sh
+++ b/src/integration/assets/devin/herdr-agent-state.sh
@@ -3,7 +3,7 @@
# managed by herdr; reinstalling or updating the integration overwrites this file.
# add custom hooks beside this file instead of editing it.
# HERDR_INTEGRATION_ID=devin
-# HERDR_INTEGRATION_VERSION=1
+# HERDR_INTEGRATION_VERSION=2
set -eu
@@ -23,6 +23,8 @@ esac
command -v python3 >/dev/null 2>&1 || exit 0
HERDR_HOOK_INPUT_FILE="$hook_input_file" python3 - <<'PY'
+from __future__ import annotations
+
import json
import os
import random
diff --git a/src/integration/mod.rs b/src/integration/mod.rs
index 14d88e19..d08ad32e 100644
--- a/src/integration/mod.rs
+++ b/src/integration/mod.rs
@@ -93,7 +93,7 @@ const COPILOT_REMOVED_LIFECYCLE_HOOK_EVENTS: [&str; 9] = [
];
const DEVIN_HOOK_INSTALL_NAME: &str = "herdr-agent-state.sh";
const DEVIN_HOOK_ASSET: &str = include_str!("assets/devin/herdr-agent-state.sh");
-const DEVIN_INTEGRATION_VERSION: u32 = 1;
+const DEVIN_INTEGRATION_VERSION: u32 = 2;
const DEVIN_HOOK_EVENTS: [(&str, &str); 6] = [
("SessionStart", "session"),
("UserPromptSubmit", "session"),