Versions in this module Expand all Collapse all v0 v0.2.0 Jul 14, 2026 v0.1.0 Jun 22, 2026 Changes in this version + const CompletedJobRetentionMinutes + const MaxBackgroundJobs + var NoUnset atomic.Bool + func ExitCode(err error) int + func ExpandValue(ctx context.Context, value string, env []string) (string, error) + func IsInterrupt(err error) bool + func Run(ctx context.Context, opts RunOptions) (err error) + func SeshatEnvMarkers() []string + type BackgroundShell struct + Command string + Description string + ID string + Shell *Shell + WorkingDir string + func (bs *BackgroundShell) GetOutput() (stdout string, stderr string, done bool, err error) + func (bs *BackgroundShell) IsDone() bool + func (bs *BackgroundShell) Wait() + func (bs *BackgroundShell) WaitContext(ctx context.Context) bool + type BackgroundShellInfo struct + Command string + Description string + ID string + type BackgroundShellManager struct + func GetBackgroundShellManager() *BackgroundShellManager + func (m *BackgroundShellManager) Cleanup() int + func (m *BackgroundShellManager) Get(id string) (*BackgroundShell, bool) + func (m *BackgroundShellManager) Kill(id string) error + func (m *BackgroundShellManager) KillAll(ctx context.Context) + func (m *BackgroundShellManager) List() []string + func (m *BackgroundShellManager) Remove(id string) error + func (m *BackgroundShellManager) Start(ctx context.Context, workingDir string, blockFuncs []BlockFunc, command string, ...) (*BackgroundShell, error) + type BlockFunc func(args []string) bool + func ArgumentsBlocker(cmd string, args []string, flags []string) BlockFunc + func CommandsBlocker(cmds []string) BlockFunc + type Logger interface + InfoPersist func(msg string, keysAndValues ...any) + type Options struct + BlockFuncs []BlockFunc + Env []string + Logger Logger + WorkingDir string + type RunOptions struct + BlockFuncs []BlockFunc + Command string + Cwd string + Env []string + Stderr io.Writer + Stdin io.Reader + Stdout io.Writer + type Shell struct + func NewShell(opts *Options) *Shell + func (s *Shell) Exec(ctx context.Context, command string) (string, string, error) + func (s *Shell) ExecStream(ctx context.Context, command string, stdout, stderr io.Writer) error + func (s *Shell) GetEnv() []string + func (s *Shell) GetWorkingDir() string + func (s *Shell) SetBlockFuncs(blockFuncs []BlockFunc) + func (s *Shell) SetEnv(key, value string) + func (s *Shell) SetWorkingDir(dir string) error + type ShellType int + const ShellTypeCmd + const ShellTypePOSIX + const ShellTypePowerShell