fix(codeagent-wrapper): use -r flag for claude backend resume

Claude CLI uses `-r <session_id>` for resume, not `--session-id`.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
swe-agent[bot]
2025-12-12 15:10:17 +08:00
parent 4edd2d2d2d
commit 86d18ca19a
2 changed files with 3 additions and 2 deletions

View File

@@ -43,7 +43,8 @@ func (ClaudeBackend) BuildArgs(cfg *Config, targetArg string) []string {
if cfg.Mode == "resume" {
if cfg.SessionID != "" {
args = append(args, "--session-id", cfg.SessionID)
// Claude CLI uses -r <session_id> for resume.
args = append(args, "-r", cfg.SessionID)
}
} else {
args = append(args, "-C", workdir)

View File

@@ -29,7 +29,7 @@ func TestClaudeBuildArgs_ModesAndPermissions(t *testing.T) {
t.Run("resume mode uses session id and omits workdir", func(t *testing.T) {
cfg := &Config{Mode: "resume", SessionID: "sid-123", WorkDir: "/ignored"}
got := backend.BuildArgs(cfg, "resume-task")
want := []string{"-p", "--session-id", "sid-123", "--output-format", "stream-json", "--verbose", "resume-task"}
want := []string{"-p", "-r", "sid-123", "--output-format", "stream-json", "--verbose", "resume-task"}
if !reflect.DeepEqual(got, want) {
t.Fatalf("got %v, want %v", got, want)
}