28 lines
733 B
Go
28 lines
733 B
Go
package harness
|
|
|
|
import (
|
|
"time"
|
|
|
|
"keel/internal/ai"
|
|
"keel/internal/enforce"
|
|
"keel/internal/knowledge"
|
|
"keel/internal/memory"
|
|
"keel/internal/tasks"
|
|
)
|
|
|
|
// Services is the shared infrastructure every mode receives from the harness.
|
|
// Dir is the mode's namespaced persistence directory (~/.keel/modes/<kind>);
|
|
// modes build their own file paths under it. Notify fires the harness change
|
|
// listeners (web SSE + status bar). Memory is Keel's durable cross-run event
|
|
// store (AW-backed, or a nop when AW is down).
|
|
type Services struct {
|
|
AI *ai.Service
|
|
Tasks tasks.Provider
|
|
Knowledge knowledge.Source
|
|
Enforce enforce.Guard
|
|
Memory memory.Store
|
|
Clock func() time.Time
|
|
Dir string
|
|
Notify func()
|
|
}
|