Versions in this module Expand all Collapse all v0 v0.1.0 Oct 13, 2026 Changes in this version + const PreflightComplete + const PreflightFailed + const PreflightNotRun + const PreflightRunning + const RuntimeTransportHTTP1 + const RuntimeTransportHTTP2 + const RuntimeTransportHTTP3 + var ErrFilterConflict = errors.New("filter addition conflicts with the persisted scan") + var ErrMissingFuzzKeyword = errors.New("no active fuzz keyword configured") + var ErrNotFound = errors.New("not found") + func DefaultDatabasePath() (string, error) + func DefaultTLSCertificatePaths(databasePath string) (certificatePath, privateKeyPath string, err error) + func RandomPassword() (string, error) + type APIError struct + Error APIErrorBody + type APIErrorBody struct + Code string + Message string + type AddSessionFiltersRequest struct + Lines string + Mode string + Regexp string + Size string + Status string + Time string + Words string + type BulkSessionRequest struct + Action string + IDs []string + type BulkSessionResult struct + Failed map[string]string + Succeeded []string + type CloneSessionRequest struct + AutoStart bool + ExplicitFlags *[]string + Name string + Options *ffuf.ConfigOptions + Profile *string + Target *string + Wordlist *string + type Config struct + AllowInputCmd bool + AllowRemote bool + Assets fs.FS + CertificatePath string + DatabasePath string + ListenAddress string + Password string + PlainHTTP bool + PrivateKeyPath string + Username string + type CreateSessionRequest struct + AutoStart bool + ExplicitFlags []string + Name string + Options *ffuf.ConfigOptions + Profile string + Target string + Wordlist string + type Defaults struct + ExplicitFlags []string + Options ffuf.ConfigOptions + Profile string + Wordlist string + type ErrorDiagnostic struct + Category string + Count int64 + Samples []string + Suggestion string + type Event struct + At time.Time + Data interface{} + Sequence int64 + SessionID string + Type string + type ExploredResult struct + DuplicateCount int64 + Signature string + WildcardGroup bool + type Hub struct + func NewHub() *Hub + func (h *Hub) Broadcast(event Event) + func (h *Hub) Close() + type Manager struct + func NewManager(store *Store, hub *Hub, allowInputCmd bool) (*Manager, error) + func (m *Manager) AddFilters(ctx context.Context, id string, request AddSessionFiltersRequest) (Session, error) + func (m *Manager) Create(ctx context.Context, request CreateSessionRequest) (Session, error) + func (m *Manager) Delete(ctx context.Context, id string) error + func (m *Manager) Pause(ctx context.Context, id string) error + func (m *Manager) RerunPreflight(ctx context.Context, id string) (Session, error) + func (m *Manager) Resume(ctx context.Context, id string) error + func (m *Manager) Shutdown(ctx context.Context) error + func (m *Manager) Start(ctx context.Context, id string) error + func (m *Manager) Stop(ctx context.Context, id string) error + func (m *Manager) StopSnapshot(ctx context.Context, id string) (Session, error) + func (m *Manager) Update(ctx context.Context, id string, patch PatchSessionRequest) (Session, error) + type NumericFacet struct + Max int64 + Min int64 + type PatchSessionOrganizationRequest struct + Archived *bool + GroupName *string + Pinned *bool + type PatchSessionRequest struct + ExplicitFlags *[]string + Name *string + Options *ffuf.ConfigOptions + Profile *string + Target *string + Wordlist *string + type PreflightCheck struct + Attempted bool + ElapsedMS int64 + Reason string + Reliable bool + Requests int + type PreflightReport struct + AdvertisementCheck PreflightCheck + CompletedAt *time.Time + DowngradeReason string + EffectiveConnections int + EffectiveStreams int + EffectiveWorkers int + Error string + Fingerprint ffuf.HTTP3Fingerprint + HEADCheck PreflightCheck + HTTP3Advertised bool + HTTP3Advertisement string + HTTP3Negotiated bool + NegotiationCheck PreflightCheck + RanAt *time.Time + RangeCheck PreflightCheck + SelectedProtocol string + SelectedStrategy string + State string + StrategyReason string + StreamsPerConnection int + TimingsMS PreflightTimings + type PreflightTimings struct + Advertisement int64 + Baseline int64 + HEAD int64 + HTTP3 int64 + Range int64 + Total int64 + type Preset struct + CreatedAt time.Time + Description string + ExplicitFlags []string + ID string + Name string + Options ffuf.ConfigOptions + Profile string + UpdatedAt time.Time + Wordlist string + type Profile struct + Description string + Extensions []string + ID string + Name string + func Profiles() []Profile + type Progress struct + Average30s float64 + CompletedCount int + CurrentRate float64 + ETASeconds *int64 + ErrorCount int + ErrorDiagnostics []ErrorDiagnostic + LastBatchDurationMS int64 + OverallAverage float64 + PeakRate float64 + PersistenceBackpressure bool + QueuePos int + QueueTotal int + ReqCount int + ReqSec int64 + ReqTotal int + RequestCount int + ResponseCount int + ResultsQueued int + StallReason string + StalledForMS int64 + StartedAt time.Time + type ResultExplorerPage struct + Facets ResultFacets + HasMore bool + Limit int + Offset int + Results []ExploredResult + Total int64 + type ResultExplorerQuery struct + ContentTypes []string + Descending bool + GroupDuplicates bool + Limit int + LinesMax *int64 + LinesMin *int64 + Offset int + Search string + SizeMax *int64 + SizeMin *int64 + SnapshotID *int64 + Sort string + Statuses []int64 + WordsMax *int64 + WordsMin *int64 + type ResultFacets struct + ContentType map[string]int64 + Lines NumericFacet + Size NumericFacet + Status map[string]int64 + Words NumericFacet + type ResultQuery struct + AfterID int64 + BeforeID *int64 + Latest bool + Limit int + Search string + Statuses []int64 + type ResultTreeNode struct + HasChildren bool + Key string + Kind string + Name string + Result *ExploredResult + ResultCount int64 + URI string + URL string + type ResultTreePage struct + HasMore bool + Limit int + Nodes []ResultTreeNode + Offset int + SnapshotID int64 + Total int + type ResultsPage struct + HasMore bool + NextCursor int64 + Results []StoredResult + StatusCounts map[string]int64 + Total int64 + WindowTruncated bool + type SaveResultViewRequest struct + Name string + Query json.RawMessage + type SavedResultView struct + CreatedAt time.Time + ID string + Name string + Query json.RawMessage + SessionID string + UpdatedAt time.Time + type Server struct + func New(config Config) (*Server, error) + func (s *Server) BasicAuthPassword() string + func (s *Server) ConsoleURL(listener net.Listener) string + func (s *Server) Handler() http.Handler + func (s *Server) Listen() (net.Listener, error) + func (s *Server) Scheme() string + func (s *Server) Serve() error + func (s *Server) ServeListener(listener net.Listener) error + func (s *Server) Shutdown(ctx context.Context) error + func (s *Server) TLSCertificatePaths() (certificatePath, privateKeyPath string) + type Session struct + Archived bool + ClonedFromID string + CompletedAt *time.Time + CreatedAt time.Time + Error string + ErrorDiagnostics []ErrorDiagnostic + ExplicitFlags []string + GroupName string + ID string + Name string + Options ffuf.ConfigOptions + Pinned bool + PreflightReport PreflightReport + Profile string + Progress Progress + ResponseOptimizationReason string + ResponseOptimizationStrategy string + ResultCount int64 + ResultFilters ffuf.FilterOptions + RuntimeTransport string + RuntimeTransportReason string + Sequence int64 + StartedAt *time.Time + Status SessionStatus + Target string + UpdatedAt time.Time + Wordlist string + type SessionComparison struct + Added []StoredResult + AddedHasMore bool + AddedNextCursor string + AddedTotal int64 + LeftSessionID string + Limit int + Removed []StoredResult + RemovedHasMore bool + RemovedNextCursor string + RemovedTotal int64 + RightSessionID string + UnchangedCount int64 + type SessionComparisonQuery struct + Cursor string + Limit int + Side string + type SessionOrganization struct + Archived bool + ClonedFromID string + GroupName string + Pinned bool + type SessionStatus string + const StatusCompleted + const StatusFailed + const StatusIdle + const StatusPaused + const StatusRunning + const StatusStarting + const StatusStopped + const StatusStopping + type Settings struct + Defaults Defaults + SchemaVersion int + UpdatedAt time.Time + func DefaultSettings() Settings + type StorageStats struct + DatabaseBytes int64 + ReclaimableBytes int64 + ResponseBodiesStored bool + TotalBytes int64 + WALBytes int64 + Warning bool + WarningThresholdBytes int64 + type Store struct + func OpenStore(path string) (*Store, error) + func (s *Store) AllResults(ctx context.Context, sessionID string) ([]StoredResult, error) + func (s *Store) Close() error + func (s *Store) Compact(ctx context.Context) error + func (s *Store) CompareSessions(ctx context.Context, leftID, rightID string) (SessionComparison, error) + func (s *Store) CompareSessionsPage(ctx context.Context, leftID, rightID string, query SessionComparisonQuery) (SessionComparison, error) + func (s *Store) CreateSession(ctx context.Context, session *Session) error + func (s *Store) DeletePreset(ctx context.Context, id string) error + func (s *Store) DeleteResultView(ctx context.Context, sessionID, viewID string) error + func (s *Store) DeleteSession(ctx context.Context, id string) error + func (s *Store) ExploreResultTree(ctx context.Context, sessionID string, query ResultExplorerQuery, ...) (ResultTreePage, error) + func (s *Store) ExploreResults(ctx context.Context, sessionID string, query ResultExplorerQuery) (ResultExplorerPage, error) + func (s *Store) ForEachResult(ctx context.Context, sessionID string, fn func(StoredResult) error) error + func (s *Store) ForEachTerminalEntry(ctx context.Context, sessionID string, fn func(TerminalEntry) error) error + func (s *Store) GetSession(ctx context.Context, id string) (Session, error) + func (s *Store) GetSettings(ctx context.Context) (Settings, error) + func (s *Store) InsertResultBatch(ctx context.Context, sessionID string, results []StoredResult, ...) ([]StoredResult, []TerminalEntry, error) + func (s *Store) LatestResults(ctx context.Context, sessionID string, limit int) (ResultsPage, error) + func (s *Store) ListSessions(ctx context.Context) ([]Session, error) + func (s *Store) PatchSessionOrganization(ctx context.Context, sessionID string, patch PatchSessionOrganizationRequest) (SessionOrganization, error) + func (s *Store) Preset(ctx context.Context, id string) (Preset, error) + func (s *Store) Presets(ctx context.Context) ([]Preset, error) + func (s *Store) PutPreset(ctx context.Context, preset Preset) (Preset, error) + func (s *Store) PutSettings(ctx context.Context, settings Settings) error + func (s *Store) QueryResults(ctx context.Context, sessionID string, query ResultQuery) (ResultsPage, error) + func (s *Store) ResultViewByName(ctx context.Context, sessionID, name string) (SavedResultView, error) + func (s *Store) ResultViews(ctx context.Context, sessionID string) ([]SavedResultView, error) + func (s *Store) Results(ctx context.Context, sessionID string, afterID int64, limit int) (ResultsPage, error) + func (s *Store) SaveResultView(ctx context.Context, sessionID string, request SaveResultViewRequest) (SavedResultView, error) + func (s *Store) SearchTerminal(ctx context.Context, sessionID string, query TerminalQuery) (TerminalSearchPage, error) + func (s *Store) SessionOrganization(ctx context.Context, sessionID string) (SessionOrganization, error) + func (s *Store) SetClonedFrom(ctx context.Context, sessionID, sourceID string) error + func (s *Store) SetSequence(ctx context.Context, id string, sequence int64) error + func (s *Store) StorageStats(ctx context.Context) (StorageStats, error) + func (s *Store) Terminal(ctx context.Context, sessionID string, afterID int64, limit int) (TerminalPage, error) + func (s *Store) TerminalEntries(ctx context.Context, sessionID string) ([]TerminalEntry, error) + func (s *Store) TransitionSessionStatus(ctx context.Context, id string, from, to SessionStatus, errText string, ...) error + func (s *Store) UpdateProgress(ctx context.Context, id string, progress interface{}, sequence int64) error + func (s *Store) UpdateProgressTelemetry(ctx context.Context, id string, progress interface{}, ...) error + func (s *Store) UpdateSessionConfig(ctx context.Context, session Session) error + func (s *Store) UpdateSessionFilters(ctx context.Context, id string, options ffuf.ConfigOptions, ...) error + func (s *Store) UpdateSessionPreflight(ctx context.Context, id string, report PreflightReport) error + func (s *Store) UpdateSessionRuntime(ctx context.Context, ...) error + func (s *Store) UpdateSessionStatus(ctx context.Context, id string, status SessionStatus, errText string, ...) error + type StoredResult struct + ContentLength int64 + ContentLines int64 + ContentType string + ContentWords int64 + CreatedAt time.Time + DurationNS int64 + Host string + ID int64 + Input map[string][]byte + Position int + RedirectLocation string + ResponseFingerprint string + ScraperData map[string][]string + SessionID string + StatusCode int64 + URL string + type TerminalEntry struct + At time.Time + ID int64 + Level string + Message string + SessionID string + type TerminalPage struct + Entries []TerminalEntry + HasMore bool + NextCursor int64 + type TerminalQuery struct + BeforeID *int64 + Latest bool + Levels []string + Limit int + Offset int + Search string + SnapshotID *int64 + type TerminalSearchPage struct + Entries []TerminalEntry + HasMore bool + HasOlder bool + Levels map[string]int64 + Limit int + NextBeforeID int64 + Offset int + SnapshotID int64 + Total int64 + type WordlistInspection struct + CommentEntries int64 + CommentExtensionMarkers int64 + Entries int64 + Error string + ExtensionMarkers int64 + Path string + Readable bool + SizeBytes int64