Documentation
¶
Overview ¶
Package researchdossier is the public-contract Research Dossier application.
Index ¶
- func NewWebHandler(app *App) (http.Handler, error)
- func RunTerminal(ctx context.Context, app *App, input io.Reader, output io.Writer) error
- type App
- func (app *App) Artifacts(ctx context.Context, sessionID agentruntime.SessionID) (agentruntime.ArtifactPage, error)
- func (app *App) Download(ctx context.Context, artifactID agentruntime.ArtifactID) (Dossier, error)
- func (app *App) Research(ctx context.Context, sessionID agentruntime.SessionID, question string) (agentruntime.SendInputResult, error)
- func (app *App) Resume(ctx context.Context, sessionID agentruntime.SessionID, ...) (Progress, error)
- func (app *App) Start(ctx context.Context, revision agentruntime.AgentRevisionID, brief string) (agentruntime.Session, agentruntime.SendInputResult, error)
- type Citation
- type Client
- type Dossier
- type KeySource
- type Progress
- type RandomKeys
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func NewWebHandler ¶
NewWebHandler creates the loopback Research Dossier web UI. Its server owns the public SDK credential; the browser never receives it. Mutations require a per-handler CSRF token and same-origin browser request.
Types ¶
type App ¶
type App struct {
// contains filtered or unexported fields
}
App coordinates durable research work through the public runtime contract.
func (*App) Artifacts ¶
func (app *App) Artifacts(ctx context.Context, sessionID agentruntime.SessionID) (agentruntime.ArtifactPage, error)
Artifacts lists retained immutable output metadata for the exact Session.
func (*App) Download ¶
func (app *App) Download(ctx context.Context, artifactID agentruntime.ArtifactID) (Dossier, error)
Download reads one exact caller-authorized dossier Artifact and derives its citation index from retained bytes; it never accepts an external storage URL.
func (*App) Research ¶
func (app *App) Research(ctx context.Context, sessionID agentruntime.SessionID, question string) (agentruntime.SendInputResult, error)
Research appends one bounded research step behind earlier durable work.
func (*App) Resume ¶
func (app *App) Resume(ctx context.Context, sessionID agentruntime.SessionID, after agentruntime.Cursor) (Progress, error)
Resume recovers current research state and Product events after a browser, terminal, or API-process interruption. A Gap remains explicit to callers.
func (*App) Start ¶
func (app *App) Start(ctx context.Context, revision agentruntime.AgentRevisionID, brief string) (agentruntime.Session, agentruntime.SendInputResult, error)
Start creates one research Session and durably submits its initial brief.
type Citation ¶
type Citation struct {
URL string
}
Citation is one safe web citation found in a retained dossier Artifact.
func ExtractCitations ¶
ExtractCitations returns ordered, de-duplicated absolute HTTP(S) citations. Non-web schemes and malformed URLs never become clickable public citations.
type Client ¶
type Client interface {
CreateSession(context.Context, agentruntime.CreateSessionRequest) (agentruntime.Session, error)
SendInput(context.Context, agentruntime.SendInputRequest) (agentruntime.SendInputResult, error)
InspectSession(context.Context, agentruntime.SessionID) (agentruntime.SessionView, error)
Events(context.Context, agentruntime.SessionID, agentruntime.Cursor, int) (agentruntime.EventPage, error)
ListSessionArtifacts(context.Context, agentruntime.SessionID) (agentruntime.ArtifactPage, error)
ReadArtifact(context.Context, agentruntime.ArtifactID) (agentruntime.ArtifactDownload, error)
}
Client is the narrow public SDK surface used by Research Dossier. It keeps the application independent of private state, Temporal, blob, and tool APIs.
type Dossier ¶
type Dossier struct {
Artifact agentruntime.ArtifactReference
Body []byte
Citations []Citation
}
Dossier is a downloaded immutable Artifact and its safe citation index.
type Progress ¶
type Progress struct {
Session agentruntime.SessionView
Events agentruntime.EventPage
}
Progress is a durable Session snapshot paired with a resumable event page.
type RandomKeys ¶
type RandomKeys struct{}
RandomKeys creates opaque idempotency keys without deriving them from a research brief, source, citation, or Artifact body.
Directories
¶
| Path | Synopsis |
|---|---|
|
cmd
|
|
|
research-dossier
command
Command research-dossier runs the Research Dossier web or terminal example through Agent Runtime's public Go SDK only.
|
Command research-dossier runs the Research Dossier web or terminal example through Agent Runtime's public Go SDK only. |