Skip to content
Telltale

Tune detection policy

Choose active rules and categories, manage detection noise, and distinguish policy configuration from blocking.

Technical reference for a development snapshot. Check the matching release when operating an installed version.

On this page

Telltale uses policy YAML to select Rule v1 detections. The names below describe configuration outcomes and proposed future behavior, not selectable scanner modes.

Current Phase: Log-Review

Telltale currently operates as a batch log-review system. It discovers agent session stores, parses transcripts, applies deterministic detection rules, and emits JSONL events for SIEM ingestion. It does not hook into agent processes, intercept tool calls, make outbound review requests, or terminate sessions.

The long-term engine separates detection (produces signals) from policy (produces decisions such as allow, observe, warn, require approval, reprompt, block, and remediate) and capability-driven action adapters. This document’s “modes” describe the current phase’s configuration vocabulary, not that future engine stage; today’s policy YAML selects active rule categories and rule IDs, and the emitted deterministic response metadata is the review artifact downstream consumers use.

There is no policy-mode flag and no policy_mode event field. observe and alert below describe configuration outcomes, not a mode enum. simulate-block is not implemented.

observe

Suppress policy-controlled Rule v1 detections while retaining conditional health events and activity with --emit-activity. Health events are emitted for dry-run or backfill, inventory changes, scanner errors, outages, or operational alerts; an unchanged routine scan need not emit one. Process-chain detections are independently enabled by default; also set detections.process_chain: false in settings.d (or TELLTALE_PROCESS_CHAIN_DETECTIONS=0) for a detection-free baseline scan.

BehaviorSetting
Activity eventsemitted only with --emit-activity
Health eventsconditional on the changes, errors, execution settings, or alerts described above
Detection eventsRule v1 candidates disabled by policy; process-chain events require the separate setting above
Review metadataabsent only when neither detection path emits
Operational alertsemitted

Use this configuration when onboarding a host or source to confirm discovery, parsing, and schema compliance without detection noise.

For the bundled Rule v1 pack, disable all of its categories as follows. Custom packs need their own categories or rule IDs disabled too; the policy name alone does not select any behavior.

# observe-policy.yaml
name: observe
disabled_categories:
  - secret_access
  - credential_pattern
  - execution
  - download
  - install
  - exfiltration
  - persistence
  - approval_bypass
  - tool_injection
  - mcp_prompt_injection
  - credential_harvesting
  - supply_chain
  - mcp_enumeration
TELLTALE_PROCESS_CHAIN_DETECTIONS=0 telltale scan --once --emit-activity --policy observe-policy.yaml --root "$HOME"

alert

Emit detections with deterministic response metadata for analyst review. This is the default scan behavior, not a named mode or flag.

BehaviorSetting
Activity eventsemitted (with --emit-activity)
Health eventsconditional, as described under observe
Detection eventsemitted
Review metadataNative Event 3.0 uses deterministic response metadata and optional timeline_anchors; no embedded triage verdict
Operational alertsemitted

Detections follow this severity mapping (the current convention; the adopted principles treat response selection as a future policy responsibility rather than a fixed severity table):

ScoreSeverityReview metadataEmission
0–19informationaldeterministic response metadatainformational native detection/process-chain event; activity is separate
20–49lowdeterministic response metadatadetection event with response metadata
50–69mediumdeterministic response metadatadetection event with expanded context and response metadata
70–89highdeterministic response metadatadetection event with deterministic response metadata
90+criticaldeterministic response metadatadetection event with deterministic response metadata

Without an effective policy, policy filtering is not applied; rule packs and overrides still determine the active definitions. An explicit --policy selects the policy file; omitting it can still load an auto-discovered policies.d file. --no-local-config disables that discovery, not an explicit policy. An effective policy filters Rule v1 rules; process-chain enablement is independent.

simulate-block

Not implemented. There is no --mode flag, and events are not stamped with policy_mode. The table below is not current behavior.

BehaviorSetting
Activity eventsnot implemented
Health eventsnot implemented as a distinct mode
Detection eventsnot implemented; no policy_mode field is emitted
Review metadatanot implemented as a distinct mode
Operational alertsnot implemented as a distinct mode
Session terminationnever

simulate-block is not yet implemented as a distinct CLI mode. Today, the same effect can be approximated by using a strict policy with alert behavior and reviewing the response.recommended_action field on detection events. A dedicated --mode simulate-block flag that stamps events with the policy mode is a future enhancement.

Future Phases: Active Hook

The following modes are historical forward-looking intent predating the adopted development principles. They require integration with agent runtimes or process control and belong to a later phase after the log-review model proves accurate and the false-positive profile is stable; the principles’ provider-neutral decision/action model supersedes this older mode vocabulary when that work is accepted.

confirm

Require a human to approve containment before Telltale takes action.

BehaviorSetting
Detection eventsemitted
Review metadatadeterministic Event 3.0 response metadata
Containment actionqueued for human approval
Session terminationonly after explicit approval

confirm would integrate with a ticketing system, chat bot, or approval UI. Telltale would emit a containment_pending event and wait for a containment_approved or containment_denied response before acting.

block

Automatically deny or terminate sessions for high-confidence detections that match configured containment rules.

BehaviorSetting
Detection eventsemitted
Triage callsnone; downstream analyst review remains outside the scanner
Containment actionautomatic for configured rules
Session terminationon match, without human approval

block is the most aggressive mode. It requires:

  • a mature detection corpus with documented false-positive rates below 5%;
  • analyst review procedures tuned per rule category;
  • explicit per-rule opt-in for automatic containment;
  • audit logging of every containment action;
  • a kill switch to revert to alert or simulate-block.

Policy YAML

Telltale uses policy YAML to select active Rule v1 categories and rule IDs:

# config/policy.yaml
name: strict-workstation
enabled_categories:
  - secret_access
  - credential_pattern
  - exfiltration
  - mcp_prompt_injection
disabled_rules:
  - network.controlled_test_domain.darkroast

Load a policy at scan time:

telltale scan --once --policy config/policy.yaml --root "$HOME"

Policy YAML controls which Rule v1 rules remain active, not an enforcement response or scanner mode. Matching active rules emit the current deterministic review metadata. Future decisions, capabilities, and enforcement degradation belong to the separately accepted policy layer.

Relationship to Other Features

FeatureConfiguration interaction
AllowlistsSuppressed detections are logged at informational with the suppressed tag.
Analyst reviewAbove-threshold events carry deterministic response metadata and optional anchors; suppressed detections remain informational.
Response contractNon-suppressed emitted detections carry response metadata. Allowlist suppression clears response. simulate-block is not implemented.
Operational alertsIndependent of Rule v1 category/rule selection.
CorrelationCross-session correlation operates on emitted detection events; there is no distinct simulate-block path.

Configuration Guidance

ScenarioCurrent configuration
First deployment on a new hostDisable all active Rule v1 categories/rules and set TELLTALE_PROCESS_CHAIN_DETECTIONS=0; add --emit-activity for activity telemetry
Tuning rules on a developer workstationKeep relevant detections active and use --policy to select them
Production SIEM ingestionNormal scan with reviewed policy and sink configuration
Evaluating containment rulesReview response recommendations; no simulation mode is implemented
Automated responseNo active blocking or termination is implemented
Source and version

This reference reproduces the complete upstream document. Heading and status presentation follow this site’s theme; technical text and limitations stay with the source.

Read the original Markdown at e67786817228.

Apache-2.0 license