[{"data":1,"prerenderedAt":1633},["ShallowReactive",2],{"page-\u002Fdethereal\u002Fglossary":3,"navigation":1315},{"id":4,"title":5,"body":6,"description":1300,"extension":1301,"meta":1302,"navigation":1310,"path":1311,"seo":1312,"stem":1313,"__hash__":1314},"docs\u002F03.dethereal\u002F09.glossary.md","Dethereal Glossary",{"type":7,"value":8,"toc":1285},"minimark",[9,13,25,28,33,44,63,69,75,85,87,91,97,103,109,115,143,165,210,243,249,259,265,267,271,299,319,328,441,457,481,504,523,548,562,646,658,660,664,670,676,682,692,706,712,718,728,734,736,740,745,751,757,767,773,783,785,789,794,816,834,840,846,852,858,860,864,873,883,900,906,918,939,962,987,1001,1018,1034,1048,1057,1071,1080,1082,1086,1092,1098,1104,1114,1124,1134,1136,1140,1160,1200,1202,1206,1212,1218,1227,1233,1247,1273,1275],[10,11,5],"h1",{"id":12},"dethereal-glossary",[14,15,16,17,24],"p",{},"Plugin-specific terminology. For platform-wide terms, see the ",[18,19,23],"a",{"href":20,"rel":21},"https:\u002F\u002Fgithub.com\u002Fdether-net\u002Fdethernety-oss\u002Fblob\u002Fmain\u002Fdocs\u002FGLOSSARY.md",[22],"nofollow","Dethernety Glossary",".",[26,27],"hr",{},[29,30,32],"h2",{"id":31},"plugin-concepts","Plugin Concepts",[14,34,35,39,40,24],{},[36,37,38],"strong",{},"Agent"," — A specialized AI persona with specific tools, behaviors, and constraints. Dethereal has 5 agents: threat-modeler, infrastructure-scout, infrastructure-scout-scoped, security-enricher, and model-reviewer. See ",[18,41,43],{"href":42},"\u002Fdethereal\u002Fagents-and-architecture#the-5-ai-agents","Agents, Tools, and Hooks",[14,45,46,49,50,53,54,58,59,24],{},[36,47,48],{},"Command"," (also called ",[36,51,52],{},"Skill"," internally) — A slash command (",[55,56,57],"code",{},"\u002Fdethereal:\u003Cname>",") that performs a specific modeling workflow step. Commands invoke agents and use MCP tools. Dethereal has 14 commands. See ",[18,60,62],{"href":61},"\u002Fdethereal\u002Fcommand-reference","Command Reference",[14,64,65,68],{},[36,66,67],{},"Hook"," — A lifecycle event handler that runs automatically at specific moments (session start, after file edits, before context compaction).",[14,70,71,74],{},[36,72,73],{},"MCP Tool"," — A function exposed by the MCP (Model Context Protocol) server for platform communication. 22 tools handle authentication, model CRUD, MITRE queries, security elements, classification, control-gap analysis, and attribute stub generation.",[14,76,77,80,81,84],{},[36,78,79],{},"MCP Server"," — The TypeScript server (",[55,82,83],{},"@dether.net\u002Fdethereal",") that implements the Model Context Protocol, exposing platform capabilities as tools that AI agents can use.",[26,86],{},[29,88,90],{"id":89},"model-structure","Model Structure",[14,92,93,96],{},[36,94,95],{},"Component"," — A building block of the threat model. Three types: PROCESS (running software), STORE (data persistence), EXTERNAL_ENTITY (outside your control).",[14,98,99,102],{},[36,100,101],{},"Trust Boundary"," — A security zone in your architecture where the rules change. Boundaries form a hierarchy representing network segments, access control zones, or deployment environments.",[14,104,105,108],{},[36,106,107],{},"Data Flow"," — A directed connection between two components, representing communication. Cross-boundary flows are high-priority for security analysis.",[14,110,111,114],{},[36,112,113],{},"Data Item"," — A classification of what data a flow carries, with sensitivity level and regulatory labels.",[14,116,117,120,121,124,125,124,128,124,131,134,135,139,140,142],{},[36,118,119],{},"Sensitivity"," — A data item's author-asserted confidentiality classification on a four-level scale, lowest to highest: ",[55,122,123],{},"public",", ",[55,126,127],{},"internal",[55,129,130],{},"confidential",[55,132,133],{},"restricted",". Absent ⇒ unclassified (which is ",[136,137,138],"em",{},"not"," the same as ",[55,141,123],{},").",[14,144,145,148,149,124,152,124,155,158,159,164],{},[36,146,147],{},"Regulatory Flags"," — Free-text compliance labels on a data item (e.g. ",[55,150,151],{},"PCI cardholder",[55,153,154],{},"PHI",[55,156,157],{},"GDPR personal","), kept separate from sensitivity. Matched exactly and case-sensitively by the platform's compliance queries; see the ",[18,160,163],{"href":161,"rel":162},"https:\u002F\u002Fgithub.com\u002Fdether-net\u002Fdethernety-oss\u002Fblob\u002Fmain\u002Fdocs\u002Farchitecture\u002Fdethereal\u002FTHREAT_MODELING_WORKFLOW.md#canonical-sensitivity-and-regulatory-flag-vocabulary",[22],"canonical vocabulary"," for the recommended set and casing.",[14,166,167,170,171,174,175,178,179,124,182,124,185,124,188,124,191,124,194,124,197,200,201,139,203,205,206,24],{},[36,168,169],{},"Origin"," — A data item's author-asserted answer to who can write its content (",[55,172,173],{},"origin"," in ",[55,176,177],{},"data-items.json","), most to least trusted: ",[55,180,181],{},"authenticated_first_party",[55,183,184],{},"curated_internal",[55,186,187],{},"agent_relayed",[55,189,190],{},"model_generated",[55,192,193],{},"third_party",[55,195,196],{},"arbitrary_public",[55,198,199],{},"not_assessed",". The last three are untrusted, and the least-trusted source wins. Absent ⇒ unclassified (which is ",[136,202,138],{},[55,204,199],{},"). See the ",[18,207,163],{"href":208,"rel":209},"https:\u002F\u002Fgithub.com\u002Fdether-net\u002Fdethernety-oss\u002Fblob\u002Fmain\u002Fdocs\u002Farchitecture\u002Fdethereal\u002FTHREAT_MODELING_WORKFLOW.md#canonical-data-origin-and-credential-vocabulary",[22],[14,211,212,215,216,174,219,221,222,124,225,228,229,231,232,234,235,239,240,24],{},[36,213,214],{},"Credential Flag"," — A data item's author-asserted answer to whether it is a credential (",[55,217,218],{},"is_credential",[55,220,177],{},"): ",[55,223,224],{},"true",[55,226,227],{},"false",", or absent (unknown). Enrichment proposes ",[55,230,224],{}," for items bound to a credential-like data class and never sets it on its own; an answered ",[55,233,227],{}," is kept. Distinct from ",[18,236,238],{"href":237},"#security-concepts","Credential Topology",". See the ",[18,241,163],{"href":208,"rel":242},[22],[14,244,245,248],{},[36,246,247],{},"Class"," — A predefined type from the platform's module system (e.g., \"Database\", \"Web Application\", \"Load Balancer\"). Classification assigns a class to an element, enabling attribute schemas and analysis.",[14,250,251,254,255,258],{},[36,252,253],{},"Attribute"," — A security property of an element, stored in ",[55,256,257],{},"attributes\u002F\u003Ctype>\u002F\u003Cid>.json",". The 6 key component attributes are: authentication, encryption in transit, encryption at rest, logging, access control, and log telemetry.",[14,260,261,264],{},[36,262,263],{},"Split-File Format"," — The directory structure for threat models: separate JSON files for manifest, structure, dataflows, data-items, and per-element attributes.",[26,266],{},[29,268,270],{"id":269},"trust-zoning-and-conduits","Trust Zoning and Conduits",[14,272,273,274,277,278,281,282,124,285,124,288,124,291,294,295,24],{},"Zoning records the ",[136,275,276],{},"declared design intent"," of your segmentation — which trust tier each boundary sits on and which boundaries are meant to talk. The plugin stores it on each boundary in ",[55,279,280],{},"structure.json"," (",[55,283,284],{},"zone",[55,286,287],{},"planes",[55,289,290],{},"domains",[55,292,293],{},"conduits",") and round-trips it to the platform. For the full how-to (setting zones in the GUI, inheritance, the Zoning overview), see the platform guide ",[18,296,298],{"href":297},"\u002Fplatform\u002Fboundary-trust-zones","Boundary Trust Zones",[14,300,301,304,305,308,309,311,312,315,316,142],{},[36,302,303],{},"Trust Zone"," — The exposure tier a boundary sits on: ",[136,306,307],{},"who can reach it",". Stored as the ",[55,310,284],{}," field on each boundary. Six values on an exposure gradient (plus an off-gradient external tier). A boundary with no zone ",[36,313,314],{},"inherits"," one (see ",[136,317,318],{},"Zone Inheritance",[14,320,321,324,325,327],{},[36,322,323],{},"The Six Zones"," — The fixed set of trust-zone values the plugin writes to ",[55,326,284],{},". Ordered by exposure, with the platform guide's friendly label in parentheses:",[329,330,336],"div",{"className":331,"tabIndex":333,"role":334,"ariaLabel":335},[332],"table-frame",0,"region","Table: Trust Zoning and Conduits",[337,338,339,355],"table",{},[340,341,342],"thead",{},[343,344,345,349,352],"tr",{},[346,347,348],"th",{},"Value",[346,350,351],{},"Friendly label",[346,353,354],{},"Reachable by",[356,357,358,372,385,398,411,424],"tbody",{},[343,359,360,366,369],{},[361,362,363],"td",{},[55,364,365],{},"UNTRUSTED",[361,367,368],{},"Open internet",[361,370,371],{},"Anonymous, hostile — the open internet",[343,373,374,379,382],{},[361,375,376],{},[55,377,378],{},"PUBLIC",[361,380,381],{},"Internet-facing",[361,383,384],{},"Directly reachable from the internet",[343,386,387,392,395],{},[361,388,389],{},[55,390,391],{},"EXPOSED",[361,393,394],{},"Behind the front door (DMZ)",[361,396,397],{},"Reachable only through a public edge",[343,399,400,405,408],{},[361,401,402],{},[55,403,404],{},"INTERNAL",[361,406,407],{},"Internal",[361,409,410],{},"Reachable only from trusted zones; the default fallback",[343,412,413,418,421],{},[361,414,415],{},[55,416,417],{},"RESTRICTED",[361,419,420],{},"Restricted",[361,422,423],{},"CDE, secrets, domain controllers, regulated-data stores",[343,425,426,431,434],{},[361,427,428],{},[55,429,430],{},"VENDOR",[361,432,433],{},"Trusted external",[361,435,436,437,440],{},"Vetted vendor \u002F partner — kept ",[36,438,439],{},"off"," the exposure gradient",[14,442,443,445,446,449,450,452,453,456],{},[36,444,318],{}," — A boundary with no zone of its own (",[55,447,448],{},"zone: null",") resolves to the zone of its nearest ancestor boundary that declares one. If nothing up the chain declares a zone, it falls back to the default ",[55,451,404],{}," and is flagged (the ",[55,454,455],{},"unclassified"," finding).",[14,458,459,462,463,466,467,470,471,474,475,281,478,142],{},[36,460,461],{},"Structural Container"," — A boundary that mainly ",[136,464,465],{},"nests"," other boundaries (a VPC, a cluster, a cloud account). It usually spans several tiers at once, so it ",[36,468,469],{},"abstains"," — the plugin proposes it no zone and does not nag it as unclassified. Zone the ",[36,472,473],{},"leaf"," boundaries inside it, not the wrapper. The model review renders a container's span as a ",[36,476,477],{},"display roll-up",[55,479,480],{},"— structural · spans \u003Cmin>…\u003Cmax>",[14,482,483,486,487,489,490,493,494,497,498,500,501,142],{},[36,484,485],{},"Plane"," — A boundary's operational role, stored in the ",[55,488,287],{}," array: ",[55,491,492],{},"WORKLOAD"," (runs application workload) and\u002For ",[55,495,496],{},"MANAGEMENT"," (runs admin \u002F control-plane infrastructure). A ",[55,499,496],{}," plane that resolves to an exposed tier is a finding (",[55,502,503],{},"mgmt-plane",[14,505,506,509,510,512,513,124,516,519,520,24],{},[36,507,508],{},"Domain"," — A free-text business-function tag on a boundary, stored in the ",[55,511,290],{}," array (e.g. ",[55,514,515],{},"payments",[55,517,518],{},"identity","). Advisory grouping; the only finding that reads it is ",[55,521,522],{},"cross-tier-domain",[14,524,525,528,529,532,533,535,536,539,540,543,544,547],{},[36,526,527],{},"Conduit (Approved Channel)"," — A declared, directional channel recording that one boundary is ",[136,530,531],{},"meant"," to communicate with a peer, with an optional justification. Stored in the ",[55,534,293],{}," array and written ",[36,537,538],{},"OUTBOUND-canonical"," (a crossing is recorded once, as ",[55,541,542],{},"OUTBOUND"," on the source; the inbound view is re-derived on read). The plugin authors only the ",[55,545,546],{},"justification","; enforcement is left to analysis.",[14,549,550,553,554,557,558,561],{},[36,551,552],{},"Zoning Findings"," — Six ",[36,555,556],{},"advisory"," findings the model review rolls up from your zoning. They inform; they ",[36,559,560],{},"never"," block a sync:",[329,563,565],{"className":564,"tabIndex":333,"role":334,"ariaLabel":335},[332],[337,566,567,577],{},[340,568,569],{},[343,570,571,574],{},[346,572,573],{},"Finding",[346,575,576],{},"Fires when",[356,578,579,590,602,614,624,634],{},[343,580,581,585],{},[361,582,583],{},[55,584,455],{},[361,586,587,588,142],{},"A boundary has no zone anywhere up its chain (falls back to default ",[55,589,404],{},[343,591,592,597],{},[361,593,594],{},[55,595,596],{},"under-protected",[361,598,599,600,24],{},"A boundary holding an asset directly resolves looser than ",[55,601,417],{},[343,603,604,608],{},[361,605,606],{},[55,607,503],{},[361,609,610,611,613],{},"A ",[55,612,496],{}," plane resolves to an exposed tier.",[343,615,616,621],{},[361,617,618],{},[55,619,620],{},"external-ingress",[361,622,623],{},"An external-tier boundary reaches a trusted tier with no approved channel.",[343,625,626,631],{},[361,627,628],{},[55,629,630],{},"flow-channel",[361,632,633],{},"A risk-bearing crossing diverges from its declared conduit (undeclared path, dead intent, or unreviewable declaration).",[343,635,636,640],{},[361,637,638],{},[55,639,522],{},[361,641,642,643,645],{},"A shared ",[55,644,290],{}," tag couples an externally-reachable boundary with a protected one. Dormant until you hand-author matching tags.",[14,647,648,651,652,654,655,657],{},[36,649,650],{},"Declared Intent (not enforcement)"," — Zoning and conduits document how trust is ",[136,653,531],{}," to flow; the platform does ",[36,656,138],{}," verify or enforce them. Setting a zone does not block traffic, and declaring a conduit does not prove the channel exists. That judgement is the job of security analysis, which reads zoning as its baseline.",[26,659],{},[29,661,663],{"id":662},"workflow-and-state","Workflow and State",[14,665,666,669],{},[36,667,668],{},"State"," — The current maturity level of a model. 6 states: INITIALIZED, SCOPE_DEFINED, DISCOVERED, STRUCTURE_COMPLETE, ENRICHING, REVIEWED.",[14,671,672,675],{},[36,673,674],{},"Quality Score"," — A 0-100 score measuring model completeness (not system security). Computed from 7 weighted factors. Labels: Starting (0-39), In Progress (40-69), Good (70-89), Comprehensive (90-100).",[14,677,678,681],{},[36,679,680],{},"Quality Gate"," — A progressive checkpoint with pass\u002Ffail criteria. Gate 1 (creation, advisory), Gate 2 (sync, blocking), Gate 3 (analysis, blocking).",[14,683,684,687,688,691],{},[36,685,686],{},"Scope"," — The definition of what the model covers: system name, depth, modeling intent, crown jewels, compliance drivers, exclusions, trust assumptions. Stored in ",[55,689,690],{},".dethereal\u002Fscope.json",". The platform-synced fields (depth, modeling intent, compliance drivers, exclusions, trust assumptions) round-trip to the Model node; the rest stay local.",[14,693,694,697,698,701,702,705],{},[36,695,696],{},"Crown Jewel"," — The most valuable asset in the system — what an attacker would target. Named in scope, matched to ",[36,699,700],{},"components"," during classification (synced as the ",[55,703,704],{},"Component.crownJewel"," field), and enriched with highest priority (Tier 1).",[14,707,708,711],{},[36,709,710],{},"Enrichment Tier"," — Priority grouping for enrichment order. Tier 1 (crown jewels), Tier 2 (cross-boundary), Tier 3 (internet-facing), Tier 4 (internal). Each component appears in its highest-priority tier only.",[14,713,714,717],{},[36,715,716],{},"Backward Transition"," — When structural changes (add\u002Fremove elements) at ENRICHING or REVIEWED revert the state to STRUCTURE_COMPLETE. Preserves enrichment on existing elements; flags new elements as stale.",[14,719,720,723,724,727],{},[36,721,722],{},"Stale Element"," — An element added during ENRICHING that hasn't been enriched yet. Tracked in ",[55,725,726],{},"state.json.staleElements[]"," and prioritized during the next enrichment pass.",[14,729,730,733],{},[36,731,732],{},"Session Break"," — A checkpoint after Step 5 (data flow mapping) in the guided workflow. Recommends committing to git and optionally continuing enrichment in a fresh session (saves context budget for large models).",[26,735],{},[29,737,739],{"id":738},"discovery","Discovery",[14,741,742,744],{},[36,743,739],{}," — Automated scanning of a codebase to identify infrastructure components, trust boundaries, and data flows. Performed by the infrastructure-scout agent.",[14,746,747,750],{},[36,748,749],{},"Discovery Source"," — One of 10 categories of files the scout checks: code structure, IaC, containers, Kubernetes, APIs, network config, CI\u002FCD, database schemas, environment files, and documentation.",[14,752,753,756],{},[36,754,755],{},"Confidence"," — Two-dimensional score for discovered elements: existence confidence (how certain the component exists) and classification confidence (how certain the class assignment is). Each dimension is high, medium, or low.",[14,758,759,762,763,766],{},[36,760,761],{},"Pre-Classification"," — Deterministic class assignment during discovery using IaC mapping tables (e.g., ",[55,764,765],{},"aws_rds_instance"," maps to STORE\u002FDatabase). Validated against the platform's class library.",[14,768,769,772],{},[36,770,771],{},"Blind-Spots Interview"," — A consolidated post-discovery prompt asking about commonly missed elements: shared infrastructure, side-channel flows, deployment pipeline, SaaS integrations, human actors, and shared credentials.",[14,774,775,778,779,782],{},[36,776,777],{},"Discovery Cache"," — A project-level file (",[55,780,781],{},".dethernety\u002Fdiscovery-cache.json",") storing raw discovery results for reuse across multiple models in a decomposition plan.",[26,784],{},[29,786,788],{"id":787},"security-concepts","Security Concepts",[14,790,791,793],{},[36,792,238],{}," — The mapping of which components share credentials, which flows require which credentials, and which stores hold credential material. Drives lateral movement analysis on the platform.",[14,795,796,799,800,803,804,807,808,811,812,815],{},[36,797,798],{},"Auth Failure Mode"," — What happens when authentication fails on a data flow: ",[55,801,802],{},"deny"," (connection refused), ",[55,805,806],{},"fallback"," (weaker auth), ",[55,809,810],{},"fail_open"," (allows unauthenticated access), ",[55,813,814],{},"unknown",". Flows that fail open are security-critical.",[14,817,818,821,822,825,826,829,830,833],{},[36,819,820],{},"Boundary Enforcement"," — The traffic control posture of a trust boundary: ",[55,823,824],{},"implicit_deny_enabled"," (blocks by default), ",[55,827,828],{},"allow_any_inbound"," (unrestricted inbound), ",[55,831,832],{},"egress_filtering"," (outbound policy: deny_all, allow_list, allow_all, unknown).",[14,835,836,839],{},[36,837,838],{},"Monitoring Tools"," — Which detection and response systems observe a component: SIEM, EDR, NDR, APM, cloud-native. Components without monitoring are SOC blind spots.",[14,841,842,845],{},[36,843,844],{},"Credential Blast Radius"," — The set of components affected when a shared credential is compromised. Flagged in the attack surface analysis when the same credential appears on multiple cross-boundary flows.",[14,847,848,851],{},[36,849,850],{},"Exposure"," — A platform-computed potential vulnerability specific to a model's structure and attributes. Exposures are read-only from the plugin's perspective — only the analysis engine creates them.",[14,853,854,857],{},[36,855,856],{},"Countermeasure"," — A link between a security control and an exposure, indicating that the control addresses the identified threat. Without linking, the platform's defense coverage analysis cannot credit existing defenses.",[26,859],{},[29,861,863],{"id":862},"controls-and-the-control-library","Controls and the Control Library",[14,865,866,869,870,24],{},[36,867,868],{},"Control"," — A reusable security control (e.g., \"Database Encryption Package\", \"SOC Monitoring\") that one or more model elements can reference. Controls live in the platform's library and are mirrored locally as ",[55,871,872],{},"controls\u002F\u003Cid>.json",[14,874,875,878,879,882],{},[36,876,877],{},"ControlClass"," — A platform-defined class of control (e.g., \"Encryption at Rest\", \"Access Control\"). A Control is an ",[136,880,881],{},"instance"," of one or more ControlClasses; per-(Control, Class) attribute payloads describe how the instance is configured.",[14,884,885,888,889,891,892,895,896,899],{},[36,886,887],{},"Greenfield Control"," — A Control created locally that has no platform counterpart yet. Its ",[55,890,872],{}," file uses a temporary ",[55,893,894],{},"id"," (or ",[55,897,898],{},"id: null","); the first push asks the platform for a UUID and the plugin atomically rebinds every reference.",[14,901,902,905],{},[36,903,904],{},"Brownfield Control"," — A Control that already exists on the platform and was pulled into the local model. Edits to its attributes go through the shared-ownership safety check on push.",[14,907,908,913,914,917],{},[36,909,910],{},[55,911,912],{},"pendingEdit"," — A block on a brownfield Control's ",[55,915,916],{},"classes[idx]"," recording an in-flight attribute change. Created when the operator edits attributes; consumed by the next push. Its presence is what the shared-ownership prompt refers to as \"your changes.\"",[14,919,920,925,926,929,930,932,933,935,936,938],{},[36,921,922],{},[55,923,924],{},"platformAttributes"," — The raw server-side attribute payload as of the last pull, stored alongside the editable ",[55,927,928],{},"attributes"," block on each ",[55,931,872],{}," class entry. The pair (",[55,934,928],{}," vs ",[55,937,924],{},") is how the plugin detects local edits and shared-ownership conflicts.",[14,940,941,944,945,947,948,951,952,954,955,958,959,961],{},[36,942,943],{},"Two-Write Rule"," — Every edit to a Control's ",[55,946,928],{}," must (a) bump ",[55,949,950],{},"localEditedAt"," and (b) populate ",[55,953,912],{},". The plugin enforces this via the ",[55,956,957],{},"set-local-edited"," MCP action — never edit ",[55,960,872],{}," by hand.",[14,963,964,967,968,124,971,974,975,978,979,982,983,24],{},[36,965,966],{},"Shared-Ownership Prompt"," — When pushing a brownfield Control assigned to multiple Models, the plugin shows the operator the list of co-owner Models and offers per-row choices: ",[55,969,970],{},"cancel",[55,972,973],{},"push-anyway"," (apply your edits to all sharing Models), ",[55,976,977],{},"push-unverified"," (apply when the ownership query failed), ",[55,980,981],{},"clone-and-swap"," (fork into a new Control — not yet available). See ",[18,984,986],{"href":985},"\u002Fdethereal\u002Fsync-and-version-control#shared-ownership-prompts","Sync and Version Control",[14,988,989,992,993,996,997,1000],{},[36,990,991],{},"Force-Shared \u002F Force-Unverified"," — Audit-log entry shapes recording the operator's choice when they bypass the shared-ownership default. ",[55,994,995],{},"force-shared"," means \"I knowingly mutated a multi-owner Control.\" ",[55,998,999],{},"force-unverified"," means \"I mutated despite a failed ownership query.\"",[14,1002,1003,1006,1007,1010,1011,1013,1014,1017],{},[36,1004,1005],{},"Control Audit Log"," — ",[55,1008,1009],{},".dethereal\u002Fcontrol-audit.log",". Append-only, line-oriented JSON. Records every shared-ownership decision with operator identity, decision verb, and prior ",[55,1012,924],{},". ",[36,1015,1016],{},"Committed to git"," so PR review can see who decided what; grep\u002Fjq friendly.",[14,1019,1020,1023,1024,1026,1027,1030,1031,24],{},[36,1021,1022],{},"External-Edit Guard"," — A check on push that aborts if the platform's current ",[55,1025,924],{}," differ from the snapshot taken at the start of your edit. Surfaces as ",[55,1028,1029],{},"EXTERNAL_EDIT_DETECTED","; recovery via ",[55,1032,1033],{},"promote-external-edit",[14,1035,1036,1040,1041,1044,1045,1047],{},[36,1037,1038],{},[55,1039,1033],{}," — Recovery verb (",[55,1042,1043],{},"\u002Fdethereal:sync promote-external-edit \u003CcontrolId> \u003CclassId>",") that promotes the platform's current state into your local ",[55,1046,912],{},", treating the external change as legitimate operator intent. After this, the next push runs the shared-ownership check against your effective state.",[14,1049,1050,1006,1053,1056],{},[36,1051,1052],{},"WAL Journal",[55,1054,1055],{},".dethereal\u002Fpending-id-rewrite.json",". Pre-write log capturing the planned greenfield ID rebind so a crash mid-push leaves no stranded files. Replayed automatically on every skill entry.",[14,1058,1059,1040,1064,1067,1068,24],{},[36,1060,1061],{},[55,1062,1063],{},"repair-wal",[55,1065,1066],{},"\u002Fdethereal:sync repair-wal",") that surfaces a stranded WAL journal's contents and walks the operator through delete-journal \u002F retry-replay \u002F manual-rename. Use when any push\u002Fpull\u002Fstatus returns ",[55,1069,1070],{},"WAL_REPLAY_FAILED",[14,1072,1073,1076,1077,24],{},[36,1074,1075],{},"Tombstone"," — Lifecycle state for a Control that should not be re-pulled (deleted on the platform, or operator-retired locally). Set automatically when reconciliation detects platform deletion, or manually via ",[55,1078,1079],{},"\u002Fdethereal:sync tombstone \u003CcontrolId>",[26,1081],{},[29,1083,1085],{"id":1084},"sync-and-files","Sync and Files",[14,1087,1088,1091],{},[36,1089,1090],{},"Push"," — Publishing a local model to the platform. The local version replaces the platform version entirely. First push creates a new platform model; subsequent pushes update the existing one.",[14,1093,1094,1097],{},[36,1095,1096],{},"Pull"," — Importing a platform model to local files for offline enrichment. Creates a working copy that can be edited and pushed back.",[14,1099,1100,1103],{},[36,1101,1102],{},"Dual-Authority Model"," — The principle that local files own model structure and the platform owns computed artifacts (exposures, analysis results). Each side is authoritative for its domain.",[14,1105,1106,1109,1110,1113],{},[36,1107,1108],{},"Sync Metadata"," — The ",[55,1111,1112],{},".dethereal\u002Fsync.json"," file tracking platform model ID, last push\u002Fpull timestamps, content hashes, and baseline element IDs. Should be gitignored (per-user state).",[14,1115,1116,1119,1120,1123],{},[36,1117,1118],{},"Decomposition Plan"," — A strategy for breaking a complex system into multiple models. Tracked in ",[55,1121,1122],{},".dethernety\u002Fdecomposition-plan.json"," with model paths, statuses, and cross-model links.",[14,1125,1126,1129,1130,1133],{},[36,1127,1128],{},"Cross-Model Reference"," — A ",[55,1131,1132],{},"representedModel"," link on a component or boundary, pointing to another model that provides detailed coverage. Attack paths don't traverse these links — each model is analyzed independently.",[26,1135],{},[29,1137,1139],{"id":1138},"metadata-directories","Metadata Directories",[14,1141,1142,1147,1148,1151,1152,1155,1156,1159],{},[36,1143,1144],{},[55,1145,1146],{},".dethernety\u002F"," — Plugin-level metadata at the project root. Contains ",[55,1149,1150],{},"models.json"," (model registry), ",[55,1153,1154],{},"discovery-cache.json"," (cached discovery results), and ",[55,1157,1158],{},"decomposition-plan.json"," (multi-model plan).",[14,1161,1162,1167,1168,1171,1172,1175,1176,1179,1180,1183,1184,1187,1188,1191,1192,1195,1196,1199],{},[36,1163,1164],{},[55,1165,1166],{},".dethereal\u002F"," — Per-model workflow metadata inside each model directory. Contains ",[55,1169,1170],{},"state.json"," (workflow state), ",[55,1173,1174],{},"scope.json"," (scope definition), ",[55,1177,1178],{},"quality.json"," (quality cache), ",[55,1181,1182],{},"discovery.json"," (discovery provenance), ",[55,1185,1186],{},"sync.json"," (sync metadata), ",[55,1189,1190],{},"control-audit.log"," (control-decision ledger), ",[55,1193,1194],{},"class-cache\u002F"," (cached class templates and guides), and ",[55,1197,1198],{},"template-fields\u002F"," (per-element template field manifests, used on reclassification).",[26,1201],{},[29,1203,1205],{"id":1204},"additional-terms","Additional Terms",[14,1207,1208,1211],{},[36,1209,1210],{},"Model Resolution Protocol"," — The logic for determining which model a command operates on. If you have a single local model, it's used automatically. If you have multiple, the plugin prompts you to choose.",[14,1213,1214,1217],{},[36,1215,1216],{},"Content Hash"," — A hash of model file contents (excluding layout properties like position and dimensions) used to detect whether local changes exist since the last sync.",[14,1219,1220,1223,1224,24],{},[36,1221,1222],{},"Discovery Provenance"," — Metadata tracking where each discovered component came from: which source file, which IaC resource, what confidence level. Stored in ",[55,1225,1226],{},".dethereal\u002Fdiscovery.json",[14,1228,1229,1232],{},[36,1230,1231],{},"Decomposition Threshold"," — Size limits that trigger a recommendation to split a model into multiple sub-models. Thresholds: 21+ components, 9+ boundaries, 36+ flows, 19+ cross-boundary flows. These reflect diminishing returns of modeling very large systems as monoliths.",[14,1234,1235,1238,1239,1242,1243,1246],{},[36,1236,1237],{},"Post-Action Footer"," — The standardized output format after any command that modifies model files: ",[55,1240,1241],{},"[done]"," with quality score, ",[55,1244,1245],{},"[next]"," with recommended follow-up command.",[14,1248,1249,1252,1253,1256,1257,1260,1261,1264,1265,1268,1269,1272],{},[36,1250,1251],{},"Adversary Class"," — A scoping hint indicating which threat actor types to model: ",[55,1254,1255],{},"external"," (outside attackers), ",[55,1258,1259],{},"insider"," (malicious or compromised employees), ",[55,1262,1263],{},"supply_chain"," (compromised dependencies or build pipelines). Prompted during scope definition for ",[55,1266,1267],{},"security_review"," and ",[55,1270,1271],{},"incident_response"," intents.",[26,1274],{},[14,1276,1277,1280,1281],{},[36,1278,1279],{},"Back to:"," ",[18,1282,1284],{"href":1283},"\u002Fdethereal","Documentation Index",{"title":1286,"searchDepth":1287,"depth":1287,"links":1288},"",3,[1289,1291,1292,1293,1294,1295,1296,1297,1298,1299],{"id":31,"depth":1290,"text":32},2,{"id":89,"depth":1290,"text":90},{"id":269,"depth":1290,"text":270},{"id":662,"depth":1290,"text":663},{"id":738,"depth":1290,"text":739},{"id":787,"depth":1290,"text":788},{"id":862,"depth":1290,"text":863},{"id":1084,"depth":1290,"text":1085},{"id":1138,"depth":1290,"text":1139},{"id":1204,"depth":1290,"text":1205},"Definitions for Dethereal-specific terminology","md",{"category":1303,"position":1304,"tags":1305},"documentation",10,[1306,1307,1308,1309],"dethereal","glossary","terminology","reference",true,"\u002Fdethereal\u002Fglossary",{"title":5,"description":1300},"03.dethereal\u002F09.glossary","rjo_WJwi9Lz-Oz1ck6l4a44BC983UtEJu0TAas-jYCE",[1316,1369,1404,1450,1484,1528,1543,1613],{"title":1317,"description":1318,"path":1319,"stem":1320,"children":1321,"page":-1},"Platform","Modelling, analysis, findings and controls in the Dethernety platform.","\u002Fplatform","01.platform",[1322,1326,1331,1336,1341,1346,1351,1356,1359,1364],{"title":1323,"path":1319,"stem":1324,"description":1325},"Dethernety User Documentation","01.platform\u002Findex","User guide for the Dethernety threat modeling platform",{"title":1327,"path":1328,"stem":1329,"description":1330},"Quick Start","\u002Fplatform\u002Fquick-start","01.platform\u002F01.quick-start","Install Dethernety on your own machine, draw a four-element model and read its first threat finding.",{"title":1332,"path":1333,"stem":1334,"description":1335},"Building Your First Model","\u002Fplatform\u002Fbuilding-your-first-model","01.platform\u002F02.building-your-first-model","Build a threat model of an online store in about 30 minutes, run a Threat Report on it, and raise an issue from a finding.",{"title":1337,"path":1338,"stem":1339,"description":1340},"Security Analysis Workflow","\u002Fplatform\u002Fsecurity-analysis-workflow","01.platform\u002F03.security-analysis-workflow","How to run security analysis and interpret results to improve your threat models.",{"title":1342,"path":1343,"stem":1344,"description":1345},"Managing Findings","\u002Fplatform\u002Fmanaging-findings","01.platform\u002F04.managing-findings","Record decisions on system-generated exposures and countermeasures — affirm them as confirmed live risk, or mute them as not applicable, false positive, waived, or superseded — instead of deleting them.",{"title":1347,"path":1348,"stem":1349,"description":1350},"Working with Security Controls","\u002Fplatform\u002Fworking-with-security-controls","01.platform\u002F05.working-with-security-controls","Learn how to create, manage, and assign reusable security controls in Dethernety to protect your threat models.",{"title":1352,"path":1353,"stem":1354,"description":1355},"Issue Management Guide","\u002Fplatform\u002Fissue-management-guide","01.platform\u002F06.issue-management-guide","Issue tracking, filtering, and management in Dethernety.",{"title":298,"path":297,"stem":1357,"description":1358},"01.platform\u002F07.boundary-trust-zones","Record each security boundary's trust zone, business domains, operational role, and approved channels to document how your system is meant to be segmented.",{"title":1360,"path":1361,"stem":1362,"description":1363},"Understanding Modules","\u002Fplatform\u002Funderstanding-modules","01.platform\u002F08.understanding-modules","How Dethernety's module system extends your threat modeling capabilities.",{"title":1365,"path":1366,"stem":1367,"description":1368},"Component Configuration Guide","\u002Fplatform\u002Fcomponent-configuration-guide","01.platform\u002F09.component-configuration-guide","Detailed guide on configuring different types of components and their security implications.",{"title":1370,"description":1371,"path":1372,"stem":1373,"children":1374,"page":-1},"BYODt cloud","Deploying the platform yourself and connecting it to the BYODt cloud.","\u002Fbyodt-cloud","02.byodt-cloud",[1375,1379,1384,1389,1394,1399],{"title":1376,"path":1372,"stem":1377,"description":1378},"BYODt Deployment","02.byodt-cloud\u002Findex","Run Dethernety on your own machine: install, configure, operate, and recover",{"title":1380,"path":1381,"stem":1382,"description":1383},"Installing the BYODt Deployment","\u002Fbyodt-cloud\u002Finstallation","02.byodt-cloud\u002F01.installation","Install Dethernety on your own machine: check the requirements, download and verify the signed bundle, start it, and confirm the deployment is healthy",{"title":1385,"path":1386,"stem":1387,"description":1388},"Configuring the BYODt Deployment","\u002Fbyodt-cloud\u002Fconfiguration","02.byodt-cloud\u002F02.configuration","The .env settings reference, the generated secret file, database storage, and how to apply a change",{"title":1390,"path":1391,"stem":1392,"description":1393},"Operating the BYODt Deployment","\u002Fbyodt-cloud\u002Foperations","02.byodt-cloud\u002F03.operations","The byodt command reference and the day-to-day tasks: start, stop, inspect, back up, restore, TLS, upgrade, remove",{"title":1395,"path":1396,"stem":1397,"description":1398},"Connecting the BYODt Deployment to the Cloud","\u002Fbyodt-cloud\u002Fcloud","02.byodt-cloud\u002F04.cloud","Add cloud sign-in and content packages from the operator console, and disconnect again",{"title":1400,"path":1401,"stem":1402,"description":1403},"Troubleshooting the BYODt Deployment","\u002Fbyodt-cloud\u002Ftroubleshooting","02.byodt-cloud\u002F05.troubleshooting","Symptom, cause, and fix for the failures this deployment reports",{"title":1405,"description":1406,"path":1283,"stem":1407,"children":1408,"page":-1},"Dethereal","The Claude Code plugin: build a threat model in conversation and publish it to the platform.","03.dethereal",[1409,1413,1418,1423,1426,1431,1436,1440,1445,1449],{"title":1410,"path":1283,"stem":1411,"description":1412},"Dethereal — Claude Code Plugin for Threat Modeling","03.dethereal\u002Findex","Comprehensive documentation for the Dethereal threat modeling plugin",{"title":1414,"path":1415,"stem":1416,"description":1417},"Getting Started with Dethereal","\u002Fdethereal\u002Fgetting-started","03.dethereal\u002F01.getting-started","Install the plugin, authenticate, and create your first threat model",{"title":1419,"path":1420,"stem":1421,"description":1422},"The 11-Step Guided Workflow","\u002Fdethereal\u002Fguided-workflow","03.dethereal\u002F02.guided-workflow","Complete walkthrough of the \u002Fdethereal:threat-model guided process",{"title":62,"path":61,"stem":1424,"description":1425},"03.dethereal\u002F03.command-reference","Complete reference for all 14 Dethereal slash commands",{"title":1427,"path":1428,"stem":1429,"description":1430},"Threat Model Concepts","\u002Fdethereal\u002Fmodel-concepts","03.dethereal\u002F04.model-concepts","Components, boundaries, data flows, classes, attributes, and quality scoring",{"title":1432,"path":1433,"stem":1434,"description":1435},"Discovery and Enrichment","\u002Fdethereal\u002Fdiscovery-and-enrichment","03.dethereal\u002F05.discovery-and-enrichment","Infrastructure scanning, security attributes, MITRE ATT&CK, credentials, and compliance",{"title":986,"path":1437,"stem":1438,"description":1439},"\u002Fdethereal\u002Fsync-and-version-control","03.dethereal\u002F06.sync-and-version-control","Push\u002Fpull workflow, conflict handling, git integration, and multi-model projects",{"title":1441,"path":1442,"stem":1443,"description":1444},"Review and Attack Surface Analysis","\u002Fdethereal\u002Freview-and-analysis","03.dethereal\u002F07.review-and-analysis","Quality review, attack surface summary, and platform analysis integration",{"title":43,"path":1446,"stem":1447,"description":1448},"\u002Fdethereal\u002Fagents-and-architecture","03.dethereal\u002F08.agents-and-architecture","How the 5 AI agents, 22 MCP tools, and 3 lifecycle hooks work together",{"title":5,"path":1311,"stem":1313,"description":1300},{"title":1451,"description":1452,"path":1453,"stem":1454,"children":1455,"page":-1},"Threat Report","The residual-risk report over a threat model: reading it, filtering it and exporting it.","\u002Fthreat-report","04.threat-report",[1456,1459,1464,1469,1474,1479],{"title":1451,"path":1453,"stem":1457,"description":1458},"04.threat-report\u002Findex","Read, filter, drill into, and export a residual-risk report over a threat model",{"title":1460,"path":1461,"stem":1462,"description":1463},"Getting Started with the Threat Report","\u002Fthreat-report\u002Fgetting-started","04.threat-report\u002F01.getting-started","Generate, open, refresh, and export a threat report over a model",{"title":1465,"path":1466,"stem":1467,"description":1468},"Reading the Report","\u002Fthreat-report\u002Freading-the-report","04.threat-report\u002F02.reading-the-report","Navigating the report, the shared visual language, and the Posture and Boundary Crossings views",{"title":1470,"path":1471,"stem":1472,"description":1473},"Understanding Coverage and Gaps","\u002Fthreat-report\u002Funderstanding-coverage","04.threat-report\u002F03.understanding-coverage","Reading the MITRE ATT&CK coverage matrix: tiers, prevent vs detect, off-grid notes, and what coverage does and does not mean",{"title":1475,"path":1476,"stem":1477,"description":1478},"Reachability and Flow Routes","\u002Fthreat-report\u002Freachability","04.threat-report\u002F04.reachability","Exploring flow routes to crown-jewel assets and between any two elements — and what the analysis does and does not model",{"title":1480,"path":1481,"stem":1482,"description":1483},"Working with Findings","\u002Fthreat-report\u002Fworking-with-findings","04.threat-report\u002F05.working-with-findings","The Residual Risk ledger, triaging findings, filtering, and the per-element Component Profile",{"title":1485,"description":1486,"path":1487,"stem":1488,"children":1489,"page":-1},"Risk assessment","The risk assessment module: the register, the reports and the method behind them.","\u002Frisk-assessment","05.risk-assessment",[1490,1494,1499,1504,1509,1514,1518,1523],{"title":1491,"path":1487,"stem":1492,"description":1493},"Dethernety Risk Assessment User Guide","05.risk-assessment\u002Findex","Dethernety Risk Assessment turns a threat model you have built on the Dethernety platform into a grounded, board-ready draft risk report. From one point-in-time assessment of your model you get a prioritized worklist, a likelihood × impact risk matrix, a security-coverage posture, ten kinds of finding, a management risk register your team authors and maintains, and audience-tiered stakeholder reports — Board, Risk Committee, and Technical — plus machine-readable data exports.",{"title":1495,"path":1496,"stem":1497,"description":1498},"FAQ and Troubleshooting","\u002Frisk-assessment\u002Ffaq","05.risk-assessment\u002F01.faq","Short answers to the questions analysts, risk managers, and compliance officers ask most often about the Risk Assessment. Each answer links to the guide that covers it in full.",{"title":1500,"path":1501,"stem":1502,"description":1503},"Findings","\u002Frisk-assessment\u002Ffindings","05.risk-assessment\u002F02.findings","A finding is a specific observation the Risk Assessment makes about your threat model. Every finding is grounded in something concrete you have declared — an element, a data flow, a trust zone, a crown jewel — and it points you at a place worth a closer look. This guide is the reference to open when you see a finding and want to know what it means and what to do about it.",{"title":1505,"path":1506,"stem":1507,"description":1508},"Getting Started","\u002Frisk-assessment\u002Fgetting-started","05.risk-assessment\u002F03.getting-started","Risk Assessment turns a threat model you have built on the Dethernety platform into a grounded, board-ready draft risk report — a prioritized worklist, a likelihood × impact matrix, a security-coverage posture, ten kinds of finding, a risk register your team authors, and audience-tiered stakeholder reports and exports.",{"title":1510,"path":1511,"stem":1512,"description":1513},"Methodology and Trust","\u002Frisk-assessment\u002Fmethodology-and-trust","05.risk-assessment\u002F04.methodology-and-trust","Every number in a Risk Assessment is meant to survive scrutiny. This chapter explains why you can trust the report and — just as importantly — what it deliberately declines to claim, so you can put it in front of your board, a regulator, or an external auditor and defend every line.",{"title":1465,"path":1515,"stem":1516,"description":1517},"\u002Frisk-assessment\u002Freading-the-report","05.risk-assessment\u002F05.reading-the-report","The Risk Assessment turns your threat model into a single, scannable draft risk report: an executive summary at the top and a set of analytical tabs below it. This guide explains how to read what you see — what a matrix cell means, how coverage is stated, what a severity band is (and is not), and how to interpret each tab.",{"title":1519,"path":1520,"stem":1521,"description":1522},"Stakeholder Reports and Exports","\u002Frisk-assessment\u002Fstakeholder-reports","05.risk-assessment\u002F06.stakeholder-reports","One assessment produces reporting for every audience you answer to. From a single generated Risk Assessment you can hand your board a one-page brief, give your risk committee the full reconciliation, keep the complete technical detail for your own team, and export the underlying data into your GRC tool — without ever re-running anything or reconciling one document against another.",{"title":1524,"path":1525,"stem":1526,"description":1527},"The Risk Register","\u002Frisk-assessment\u002Fthe-risk-register","05.risk-assessment\u002F07.the-risk-register","The Risk Register is where your team records and manages the real risks your organisation is carrying — on top of, but separate from, what the analysis computed for you. Each entry is written by a person: a plain-language risk statement, your own assessment of how likely it is and how much it would hurt, the findings and elements from the analysis that back it up, a treatment decision, an owner, a review date, and a reference handle you can quote in a ticket or a board pack.",{"title":1529,"description":1530,"path":1531,"stem":1532,"children":1533,"page":-1},"Threat Patterns","The Threat Patterns module and its modelling checklist.","\u002Fthreat-patterns","06.threat-patterns",[1534,1538],{"title":1535,"path":1531,"stem":1536,"description":1537},"Threat Patterns User Guide","06.threat-patterns\u002Findex","Threat Patterns finds threats in your model that no single element shows on its own. Each one appears only when several elements line up. For example, an agent may read content anyone can write, hold private data, and be able to send data where an outsider reads it. Each element can look acceptable alone, but together they form a path an attacker can use.",{"title":1539,"path":1540,"stem":1541,"description":1542},"Modelling Checklist","\u002Fthreat-patterns\u002Fmodelling-checklist","06.threat-patterns\u002F01.modelling-checklist","Threat Patterns decides a leg only from what your model states. An unanswered attribute or field is undetermined, never read as \"no\". This checklist lists the facts and drawings the analysis asks for most often. For each one it says where to set it and which leg it settles. Attribute names are shown as they appear on the class, in code.",{"title":1544,"description":1545,"path":1546,"stem":1547,"children":1548,"page":-1},"Agentic modelling","A hands-on training: model one agentic system step by step, with Threat Patterns after each step.","\u002Fagentic-modelling","07.agentic-modelling",[1549,1553,1558,1563,1568,1573,1578,1583,1588,1593,1598,1603,1608],{"title":1550,"path":1546,"stem":1551,"description":1552},"Model an Agentic Architecture","07.agentic-modelling\u002Findex","A hands-on training in modelling systems that run AI agents, so that Threat Patterns can analyse them. You build one system, a fictional customer-support copilot, in eleven short lessons. Each lesson adds one thing to the model, and you run Threat Patterns after each one to see what the change did.",{"title":1554,"path":1555,"stem":1556,"description":1557},"Lesson 1: Draw the Agent and What It Talks To","\u002Fagentic-modelling\u002F01-draw-the-agent","07.agentic-modelling\u002F01.01-draw-the-agent","Training overview · Lesson 1 of 11 · Next: Say what data moves",{"title":1559,"path":1560,"stem":1561,"description":1562},"Lesson 2: Say What Data Moves","\u002Fagentic-modelling\u002F02-say-what-data-moves","07.agentic-modelling\u002F02.02-say-what-data-moves","Training overview · Lesson 2 of 11 · Previous: Draw the agent · Next: Mark who is outside",{"title":1564,"path":1565,"stem":1566,"description":1567},"Lesson 3: Mark Who Is Outside","\u002Fagentic-modelling\u002F03-mark-who-is-outside","07.agentic-modelling\u002F03.03-mark-who-is-outside","Training overview · Lesson 3 of 11 · Previous: Say what data moves · Next: Draw a tool that reaches any host",{"title":1569,"path":1570,"stem":1571,"description":1572},"Lesson 4: Draw a Tool That Reaches Any Host","\u002Fagentic-modelling\u002F04-draw-a-tool-that-reaches-any-host","07.agentic-modelling\u002F04.04-draw-a-tool-that-reaches-any-host","Training overview · Lesson 4 of 11 · Previous: Mark who is outside · Next: State what the agent can do",{"title":1574,"path":1575,"stem":1576,"description":1577},"Lesson 5: State What the Agent Can Do","\u002Fagentic-modelling\u002F05-state-what-the-agent-can-do","07.agentic-modelling\u002F05.05-state-what-the-agent-can-do","Training overview · Lesson 5 of 11 · Previous: Draw a tool that reaches any host · Next: Fix a finding with a fact",{"title":1579,"path":1580,"stem":1581,"description":1582},"Lesson 6: Fix a Finding With a Fact","\u002Fagentic-modelling\u002F06-fix-a-finding-with-a-fact","07.agentic-modelling\u002F06.06-fix-a-finding-with-a-fact","Training overview · Lesson 6 of 11 · Previous: State what the agent can do · Next: Record a compensating control",{"title":1584,"path":1585,"stem":1586,"description":1587},"Lesson 7: Record a Compensating Control","\u002Fagentic-modelling\u002F07-record-a-compensating-control","07.agentic-modelling\u002F07.07-record-a-compensating-control","Training overview · Lesson 7 of 11 · Previous: Fix a finding with a fact · Next: Leave what you don't know open",{"title":1589,"path":1590,"stem":1591,"description":1592},"Lesson 8: Leave What You Don't Know Open","\u002Fagentic-modelling\u002F08-leave-unknowns-open","07.agentic-modelling\u002F08.08-leave-unknowns-open","Training overview · Lesson 8 of 11 · Previous: Record a compensating control · Next: Follow a credential",{"title":1594,"path":1595,"stem":1596,"description":1597},"Lesson 9: Follow a Credential","\u002Fagentic-modelling\u002F09-follow-a-credential","07.agentic-modelling\u002F09.09-follow-a-credential","Training overview · Lesson 9 of 11 · Previous: Leave what you don't know open · Next: Watch what gets into knowledge and memory",{"title":1599,"path":1600,"stem":1601,"description":1602},"Lesson 10: Watch What Gets Into Knowledge and Memory","\u002Fagentic-modelling\u002F10-what-gets-in","07.agentic-modelling\u002F10.10-what-gets-in","Training overview · Lesson 10 of 11 · Previous: Follow a credential · Next: Draw tools from others and hand-offs",{"title":1604,"path":1605,"stem":1606,"description":1607},"Lesson 11: Draw Tools From Others and Hand-offs","\u002Fagentic-modelling\u002F11-tools-and-handoffs","07.agentic-modelling\u002F11.11-tools-and-handoffs","Training overview · Lesson 11 of 11 · Previous: Watch what gets into knowledge and memory",{"title":1609,"path":1610,"stem":1611,"description":1612},"The recipe at a glance","\u002Fagentic-modelling\u002Frecipe-at-a-glance","07.agentic-modelling\u002F12.recipe-at-a-glance","The ten steps of the training on one page. Each lesson teaches one or two of them.",{"title":1614,"description":1615,"path":1616,"stem":1617,"children":1618,"page":-1},"BYODt subscription","Subscribing on the BYODt Portal, and moving a deployment you already run to a new team.","\u002Fbyodt-subscription","08.byodt-subscription",[1619,1623,1628],{"title":1620,"path":1616,"stem":1621,"description":1622},"BYODt Subscription","08.byodt-subscription\u002Findex","Buy content for the deployment you run yourself, and decide where that deployment goes when you buy a team edition",{"title":1624,"path":1625,"stem":1626,"description":1627},"Your Subscription","\u002Fbyodt-subscription\u002Fyour-subscription","08.byodt-subscription\u002F01.your-subscription","Create an account, subscribe by card, and find the values your deployment needs on the portal",{"title":1629,"path":1630,"stem":1631,"description":1632},"Moving a Deployment to a New Team","\u002Fbyodt-subscription\u002Fmoving-a-deployment-to-a-new-team","08.byodt-subscription\u002F02.moving-a-deployment-to-a-new-team","What to do with the deployment you already run once you buy a team edition: three ways forward, best first",1793748185264]