Co-authored-by: codegirl007 <codegirl-007@users.noreply.github.com>
40 lines
642 B
Go
40 lines
642 B
Go
package agent
|
|
|
|
import (
|
|
"context"
|
|
"time"
|
|
|
|
"agentbox/internal/environment"
|
|
)
|
|
|
|
type Observation struct {
|
|
Screenshot []byte
|
|
Timestamp time.Time
|
|
Logs []environment.LogEntry
|
|
PreviousActions []environment.InputAction
|
|
}
|
|
|
|
type Step struct {
|
|
Number int
|
|
Timestamp time.Time
|
|
ScreenshotPath string
|
|
Message string
|
|
Action *environment.InputAction
|
|
}
|
|
|
|
type Decision struct {
|
|
Reason string
|
|
Action *environment.InputAction
|
|
Done bool
|
|
}
|
|
|
|
type Agent interface {
|
|
Name() string
|
|
NextAction(
|
|
ctx context.Context,
|
|
task string,
|
|
history []Step,
|
|
observation Observation,
|
|
) (Decision, error)
|
|
}
|