Update module path from forge.lthn.ai/core/go-devops to dappco.re/go/core/devops. Migrate all imports for packages that have already moved to dappco.re: - go-io -> dappco.re/go/core/io - go-log -> dappco.re/go/core/log - go-scm -> dappco.re/go/core/scm - go-i18n -> dappco.re/go/core/i18n - agent -> dappco.re/go/agent Packages not yet migrated (cli, go-container) left as-is. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
42 lines
905 B
Go
42 lines
905 B
Go
package dev
|
|
|
|
import (
|
|
"context"
|
|
"os"
|
|
"os/exec"
|
|
|
|
"dappco.re/go/core"
|
|
agentic "dappco.re/go/agent/pkg/lifecycle"
|
|
)
|
|
|
|
// ServiceOptions for configuring the dev service.
|
|
type ServiceOptions struct {
|
|
RegistryPath string
|
|
}
|
|
|
|
// Service provides dev workflow orchestration as a Core service.
|
|
type Service struct {
|
|
*core.ServiceRuntime[ServiceOptions]
|
|
}
|
|
|
|
func (s *Service) handleTask(_ *core.Core, _ core.Task) core.Result {
|
|
return core.Result{}
|
|
}
|
|
|
|
// doCommit shells out to claude for AI-assisted commit.
|
|
func doCommit(ctx context.Context, repoPath string, allowEdit bool) error {
|
|
prompt := agentic.Prompt("commit")
|
|
|
|
tools := "Bash,Read,Glob,Grep"
|
|
if allowEdit {
|
|
tools = "Bash,Read,Write,Edit,Glob,Grep"
|
|
}
|
|
|
|
cmd := exec.CommandContext(ctx, "claude", "-p", prompt, "--allowedTools", tools)
|
|
cmd.Dir = repoPath
|
|
cmd.Stdout = os.Stdout
|
|
cmd.Stderr = os.Stderr
|
|
cmd.Stdin = os.Stdin
|
|
|
|
return cmd.Run()
|
|
}
|