Versions in this module Expand all Collapse all v1 v1.0.0 Mar 21, 2026 Changes in this version + const DefaultHTTPTimeout + const ManifestFilename + var SecretPatterns = []*regexp.Regexp + var SensitiveKeyPatterns = []*regexp.Regexp + var VariablePlaceholderPattern = regexp.MustCompile(`\{\{[A-Za-z_][A-Za-z0-9_]*\}\}`) + func ContainsVariablePlaceholder(text string) bool + func CreateManifest(falconDir string) error + func GetManifestSummary(falconDir string) string + func HasPlaintextSecret(text string) bool + func IsSecret(key, value string) bool + func MaskSecret(value string) string + func StatusCodeMeaning(code int) string + func UpdateManifestCounts(falconDir string) error + func ValidateExpectations(expected TestExpectation, resp *HTTPResponse, durationMs int64) []string + func ValidateFalconMD(path string) error + func ValidatePathWithinWorkDir(filePath, workDir string) (absPath string, err error) + func ValidateReport(path string) error + func ValidateReportContent(path string) error + func ValidateRequestForSecrets(url string, headers map[string]string, body interface{}) string + type APIKnowledgeGraph struct + Context ProjectContext + Endpoints map[string]EndpointAnalysis + Models map[string]ModelDefinition + Version string + type AssertParams struct + BodyContains []string + BodyEquals interface{} + BodyMatchesRegex string + BodyNotContains []string + ContentType string + Headers map[string]string + HeadersNotPresent []string + JSONPath map[string]interface{} + ResponseTimeMaxMs *int + StatusCode *int + StatusCodeNot *int + type AssertTool struct + func NewAssertTool(responseManager *ResponseManager) *AssertTool + func (t *AssertTool) Description() string + func (t *AssertTool) Execute(args string) (string, error) + func (t *AssertTool) Name() string + func (t *AssertTool) Parameters() string + type AssertionResult struct + FailedChecks int + Failures []string + Passed bool + PassedChecks int + TotalChecks int + type AuthParams struct + Action string + ClientID string + ClientSecret string + Flow string + FromBody string + Password string + SaveAs string + SaveTokenAs string + Scopes []string + Token string + TokenURL string + Username string + type AuthTool struct + func NewAuthTool(responseManager *ResponseManager, varStore *VariableStore) *AuthTool + func (t *AuthTool) Description() string + func (t *AuthTool) Execute(args string) (string, error) + func (t *AuthTool) Name() string + func (t *AuthTool) Parameters() string + type Baseline struct + CreatedAt time.Time + Metadata map[string]string + Name string + Response string + type BasicParams struct + Password string + SaveAs string + Username string + type BasicTool struct + func NewBasicTool(varStore *VariableStore) *BasicTool + func (t *BasicTool) Description() string + func (t *BasicTool) Execute(args string) (string, error) + func (t *BasicTool) Name() string + func (t *BasicTool) Parameters() string + type BearerParams struct + SaveAs string + Token string + type BearerTool struct + func NewBearerTool(varStore *VariableStore) *BearerTool + func (t *BearerTool) Description() string + func (t *BearerTool) Execute(args string) (string, error) + func (t *BearerTool) Name() string + func (t *BearerTool) Parameters() string + type CapturedRequest struct + Body string + Headers map[string]string + Method string + Path string + Timestamp time.Time + type CompareParams struct + Baseline string + Current string + IgnoreFields []string + IgnoreOrder bool + SaveBaseline bool + Tolerance float64 + type CompareResponsesTool struct + func NewCompareResponsesTool(responseManager *ResponseManager, falconDir string) *CompareResponsesTool + func (t *CompareResponsesTool) Description() string + func (t *CompareResponsesTool) Execute(args string) (string, error) + func (t *CompareResponsesTool) Name() string + func (t *CompareResponsesTool) Parameters() string + type ComparisonResult struct + Differences []string + Match bool + Summary string + type ConfirmationManager struct + func NewConfirmationManager() *ConfirmationManager + func (cm *ConfirmationManager) Cancel() + func (cm *ConfirmationManager) IsPending() bool + func (cm *ConfirmationManager) RequestConfirmation() bool + func (cm *ConfirmationManager) SendResponse(approved bool) + func (cm *ConfirmationManager) SetTimeout(timeout time.Duration) + func (cm *ConfirmationManager) SetTimeoutCallback(callback TimeoutCallback) + type EndpointAnalysis struct + AuthType string + Parameters []Parameter + Responses []Response + Security []SecurityRisks + Summary string + type ExtractParams struct + Cookie string + Header string + JSONPath string + Regex string + RegexGroup int + SaveAs string + type ExtractTool struct + func NewExtractTool(responseManager *ResponseManager, varStore *VariableStore) *ExtractTool + func (t *ExtractTool) Description() string + func (t *ExtractTool) Execute(args string) (string, error) + func (t *ExtractTool) Name() string + func (t *ExtractTool) Parameters() string + type FalconReadParams struct + Format string + Path string + type FalconReadTool struct + func NewFalconReadTool(falconDir string) *FalconReadTool + func (t *FalconReadTool) Description() string + func (t *FalconReadTool) Execute(args string) (string, error) + func (t *FalconReadTool) Name() string + func (t *FalconReadTool) Parameters() string + type FalconWriteParams struct + Content string + Format string + Path string + type FalconWriteTool struct + func NewFalconWriteTool(falconDir string) *FalconWriteTool + func (t *FalconWriteTool) Description() string + func (t *FalconWriteTool) Execute(args string) (string, error) + func (t *FalconWriteTool) Name() string + func (t *FalconWriteTool) Parameters() string + type HTTPRequest struct + Body interface{} + Headers map[string]string + Method string + Timeout int + URL string + type HTTPResponse struct + Body string + Duration time.Duration + Headers map[string]string + Status string + StatusCode int + func (r *HTTPResponse) FormatResponse() string + type HTTPTool struct + func NewHTTPTool(responseManager *ResponseManager, varStore *VariableStore) *HTTPTool + func (t *HTTPTool) Description() string + func (t *HTTPTool) Execute(args string) (string, error) + func (t *HTTPTool) Name() string + func (t *HTTPTool) Parameters() string + func (t *HTTPTool) Run(req HTTPRequest) (*HTTPResponse, error) + func (t *HTTPTool) SetTimeout(timeout time.Duration) + type HelperParams struct + Action string + FromBody string + Token string + type HelperTool struct + func NewHelperTool(responseManager *ResponseManager, varStore *VariableStore) *HelperTool + func (t *HelperTool) Description() string + func (t *HelperTool) Execute(args string) (string, error) + func (t *HelperTool) Name() string + func (t *HelperTool) Parameters() string + type Manifest struct + Counts map[string]int + Description string + LastUpdated string + Version int + func LoadManifest(falconDir string) (*Manifest, error) + type ModelDefinition struct + Description string + Fields map[string]Variable + Name string + type OAuth2Params struct + AuthURL string + ClientID string + ClientSecret string + Code string + Flow string + Password string + RedirectURL string + SaveTokenAs string + Scopes []string + TokenURL string + Username string + type OAuth2Tool struct + func NewOAuth2Tool(varStore *VariableStore) *OAuth2Tool + func (t *OAuth2Tool) Description() string + func (t *OAuth2Tool) Execute(args string) (string, error) + func (t *OAuth2Tool) Name() string + func (t *OAuth2Tool) Parameters() string + type Parameter struct + Description string + Name string + Required bool + Type string + type ProjectContext struct + Framework string + Language string + RootPath string + SpecPath string + type ReportWriter struct + FalconDir string + func NewReportWriter(falconDir string) *ReportWriter + func (w *ReportWriter) Write(reportName, defaultPrefix, content string) (string, error) + type Response struct + Description string + StatusCode int + type ResponseManager struct + func NewResponseManager() *ResponseManager + func (rm *ResponseManager) GetHTTPResponse() *HTTPResponse + func (rm *ResponseManager) SetHTTPResponse(resp *HTTPResponse) + type RetryParams struct + Args string + Backoff string + MaxAttempts int + RetryDelayMs int + RetryOnStatus []int + Tool string + type RetryTool struct + func NewRetryTool(executor ToolExecutor) *RetryTool + func (t *RetryTool) Description() string + func (t *RetryTool) Execute(args string) (string, error) + func (t *RetryTool) Name() string + func (t *RetryTool) Parameters() string + type SchemaParams struct + ResponseBody string + Schema interface{} + SchemaURL string + type SchemaValidationTool struct + func NewSchemaValidationTool(responseManager *ResponseManager) *SchemaValidationTool + func (t *SchemaValidationTool) Description() string + func (t *SchemaValidationTool) Execute(args string) (string, error) + func (t *SchemaValidationTool) Name() string + func (t *SchemaValidationTool) Parameters() string + type SecurityRisks struct + Description string + Risk string + Severity string + type SessionLogParams struct + Action string + Session string + Summary string + type SessionLogTool struct + func NewSessionLogTool(falconDir string) *SessionLogTool + func (t *SessionLogTool) Description() string + func (t *SessionLogTool) Execute(args string) (string, error) + func (t *SessionLogTool) Name() string + func (t *SessionLogTool) Parameters() string + type StatusCodeRange struct + Max int + Min int + type SuiteResult struct + Duration time.Duration + EndTime time.Time + Failed int + Name string + Passed int + StartTime time.Time + Tests []SuiteTestResult + TotalTests int + type SuiteTestResult struct + Duration time.Duration + Error string + Name string + Passed bool + StatusCode int + type TestDefinition struct + Assertions *AssertParams + Extract map[string]string + Name string + Request HTTPRequest + type TestExecutor struct + HTTPTool *HTTPTool + func NewTestExecutor(httpTool *HTTPTool) *TestExecutor + func (e *TestExecutor) RunScenario(scenario TestScenario, baseURL string) TestResult + func (e *TestExecutor) RunScenarios(scenarios []TestScenario, baseURL string, concurrency int) []TestResult + type TestExpectation struct + BodyContains []string + BodyNotContains []string + HeaderContains map[string]string + JSONPath map[string]interface{} + MaxDurationMs int + StatusCode int + StatusCodeRange *StatusCodeRange + type TestResult struct + ActualStatus int + Category string + DurationMs int64 + Error string + ExpectedStatus int + Logs []string + OWASPRef string + Passed bool + ResponseBody string + ScenarioID string + ScenarioName string + Severity string + Timestamp string + type TestScenario struct + Body interface{} + CWERef string + Category string + Description string + Expected TestExpectation + Headers map[string]string + ID string + Method string + Name string + OWASPRef string + Severity string + URL string + type TestSuiteParams struct + Name string + OnFailure string + SaveResults bool + Tests []TestDefinition + type TestSuiteTool struct + func NewTestSuiteTool(httpTool *HTTPTool, assertTool *AssertTool, extractTool *ExtractTool, ...) *TestSuiteTool + func (t *TestSuiteTool) Description() string + func (t *TestSuiteTool) Execute(args string) (string, error) + func (t *TestSuiteTool) Name() string + func (t *TestSuiteTool) Parameters() string + type TimeoutCallback func() + type ToolExecutor interface + ExecuteTool func(toolName string, args string) (string, error) + type Variable struct + Description string + Format string + Required bool + Type string + type VariableStore struct + func NewVariableStore(falconDir string) *VariableStore + func (vs *VariableStore) Delete(name string) + func (vs *VariableStore) Get(name string) (string, bool) + func (vs *VariableStore) List() map[string]string + func (vs *VariableStore) Set(name, value string) + func (vs *VariableStore) SetGlobal(name, value string) (warning string, err error) + func (vs *VariableStore) Substitute(text string) string + type WaitParams struct + DurationMs int + Reason string + type WaitTool struct + func NewWaitTool() *WaitTool + func (t *WaitTool) Description() string + func (t *WaitTool) Execute(args string) (string, error) + func (t *WaitTool) Name() string + func (t *WaitTool) Parameters() string + type WebhookListenerParams struct + Action string + ListenerID string + Path string + Port int + TimeoutSeconds int + type WebhookListenerTool struct + func NewWebhookListenerTool(varStore *VariableStore) *WebhookListenerTool + func (t *WebhookListenerTool) Cleanup() + func (t *WebhookListenerTool) Description() string + func (t *WebhookListenerTool) Execute(args string) (string, error) + func (t *WebhookListenerTool) Name() string + func (t *WebhookListenerTool) Parameters() string