thumbgate 1.27.20 → 1.28.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (63) hide show
  1. package/.claude-plugin/plugin.json +2 -1
  2. package/.well-known/mcp/server-card.json +1 -1
  3. package/README.md +124 -129
  4. package/adapters/claude/.mcp.json +2 -2
  5. package/adapters/mcp/server-stdio.js +18 -33
  6. package/adapters/opencode/opencode.json +1 -1
  7. package/bin/cli.js +95 -78
  8. package/bin/postinstall.js +1 -1
  9. package/config/entitlement-public-keys.json +6 -0
  10. package/config/gates/default.json +3 -3
  11. package/config/github-about.json +2 -5
  12. package/config/merge-quality-checks.json +3 -0
  13. package/config/post-deploy-marketing-pages.json +1 -1
  14. package/hooks/hooks.json +38 -0
  15. package/package.json +28 -10
  16. package/public/about.html +1 -4
  17. package/public/agent-manager.html +6 -6
  18. package/public/agents-cost-savings.html +3 -3
  19. package/public/ai-malpractice-prevention.html +1 -1
  20. package/public/blog.html +12 -9
  21. package/public/chatgpt-app.html +3 -3
  22. package/public/codex-enterprise.html +3 -3
  23. package/public/codex-plugin.html +5 -5
  24. package/public/compare.html +10 -10
  25. package/public/dashboard.html +1 -1
  26. package/public/diagnostic.html +23 -1
  27. package/public/federal.html +2 -2
  28. package/public/guide.html +14 -14
  29. package/public/index.html +202 -220
  30. package/public/install.html +14 -14
  31. package/public/learn.html +4 -17
  32. package/public/numbers.html +2 -2
  33. package/public/partner-intake.html +198 -0
  34. package/public/pricing.html +61 -31
  35. package/public/pro.html +2 -2
  36. package/scripts/agent-reward-model.js +13 -0
  37. package/scripts/bayes-optimal-gate.js +6 -1
  38. package/scripts/billing.js +815 -137
  39. package/scripts/checkout-attribution-reference.js +85 -0
  40. package/scripts/claude-feedback-sync.js +23 -6
  41. package/scripts/cli-feedback.js +33 -8
  42. package/scripts/commercial-offer.js +3 -3
  43. package/scripts/entitlement.js +250 -0
  44. package/scripts/export-databricks-bundle.js +5 -0
  45. package/scripts/export-dpo-pairs.js +6 -0
  46. package/scripts/export-hf-dataset.js +5 -0
  47. package/scripts/feedback-loop.js +290 -1
  48. package/scripts/feedback-quality.js +25 -26
  49. package/scripts/feedback-sanitizer.js +151 -3
  50. package/scripts/gates-engine.js +134 -43
  51. package/scripts/hosted-config.js +9 -2
  52. package/scripts/imperative-detector.js +85 -0
  53. package/scripts/intervention-policy.js +13 -0
  54. package/scripts/mailer/resend-mailer.js +11 -5
  55. package/scripts/pr-manager.js +9 -22
  56. package/scripts/pro-local-dashboard.js +198 -0
  57. package/scripts/risk-scorer.js +6 -0
  58. package/scripts/secret-scanner.js +363 -68
  59. package/scripts/self-protection.js +21 -36
  60. package/scripts/seo-gsd.js +2 -2
  61. package/scripts/thompson-sampling.js +11 -2
  62. package/src/api/server.js +202 -22
  63. package/public/assets/brand/github-social-preview.png +0 -0
package/public/index.html CHANGED
@@ -12,16 +12,16 @@ __GOOGLE_SITE_VERIFICATION_META__
12
12
  <link rel="apple-touch-icon" href="/assets/brand/thumbgate-mark.svg">
13
13
  <meta property="og:image" content="/og.png">
14
14
  <title>ThumbGate — Pre-action checks for AI coding agents</title>
15
- <meta name="description" content="Stripe Connect integration engineering for ticketing and marketplace platforms — Pretix plugin shipped to Hilltown Media. ThumbGate is also the pre-action governance runtime for AI coding agents (Claude Code, Cursor, Codex, Gemini CLI): 👍 thumbs up and 👎 thumbs down feedback become history-aware lessons, shared lessons and org visibility, and PreToolUse checks that block repeated mistakes before code, money, or customer systems change. Perfect for vibe coding and human-in-the-loop workflows.">
16
- <meta property="og:title" content="ThumbGate — Stop paying for the same AI mistake twice">
17
- <meta property="og:description" content="Frontier LLMs are expensive, opaque, and unreliable in production. ThumbGate gates risky agent actions before they run: workflow shape, inspection evidence, token budget, and repeated-failure memory in one pre-action check.">
15
+ <meta name="description" content="ThumbGate is the local pre-action governance runtime for AI coding agents (Claude Code, Cursor, Codex, Gemini CLI, Amp, Cline, OpenCode): accepted 👍 thumbs-up and 👎 thumbs-down feedback becomes history-aware local lessons; repeated failures can become prevention rules. PreToolUse checks flag and log risky tool calls, hard-block detected secret leaks, and block matching actions in strict mode. Pro is for individual operators; Enterprise rollout is scoped after intake.">
16
+ <meta property="og:title" content="ThumbGate — Inspect risky AI-agent actions before execution">
17
+ <meta property="og:description" content="ThumbGate evaluates proposed tool calls before execution, records allow/warn/deny decisions, hard-blocks detected secret leaks, and supports strict enforcement for matched rules.">
18
18
  <meta property="og:type" content="website">
19
19
  <meta property="og:url" content="__APP_ORIGIN__/">
20
20
  <meta property="og:image" content="https://thumbgate.ai/og.png">
21
21
  <meta name="twitter:card" content="summary_large_image">
22
22
  <meta name="twitter:image" content="https://thumbgate.ai/og.png">
23
- <meta name="thumbgate-version" content="1.27.20">
24
- <meta name="keywords" content="ThumbGate, thumbgate, AI agent orchestration, AI experience orchestration, agentic development cycle, AC/DC framework, Guide Generate Verify Solve, agent enforcement layer, save LLM tokens, reduce Claude API cost, reduce OpenAI cost, AI agent token savings, prevent LLM retries, prevent hallucination retries, stop AI token waste, pre-action checks, agent governance, Claude Code, Cursor, Codex, Gemini, Amp, Cline, OpenCode, workflow hardening, context engineering, AI authenticity, brand authenticity AI">
23
+ <meta name="thumbgate-version" content="1.28.1">
24
+ <meta name="keywords" content="ThumbGate, thumbgate, AI agent orchestration, AI experience orchestration, agentic development cycle, AC/DC framework, Guide Generate Verify Solve, agent enforcement layer, pre-action checks, agent governance, Claude Code, Cursor, Codex, Gemini, Amp, Cline, OpenCode, workflow hardening, context engineering, AI authenticity, brand authenticity AI">
25
25
  <link rel="canonical" href="__APP_ORIGIN__/">
26
26
  <link rel="alternate" type="text/markdown" title="ThumbGate LLM context" href="__APP_ORIGIN__/llm-context.md">
27
27
  <link rel="apple-touch-icon" href="/apple-touch-icon.png">
@@ -45,16 +45,13 @@ __GA_BOOTSTRAP__
45
45
  "@type": "Person",
46
46
  "name": "Igor Ganapolsky",
47
47
  "url": "https://github.com/IgorGanapolsky",
48
- "jobTitle": "Senior Mobile & AI Engineer; Stripe Connect specialist",
48
+ "jobTitle": "Senior Mobile & AI Engineer",
49
49
  "worksFor": {
50
50
  "@type": "Organization",
51
51
  "name": "ThumbGate",
52
52
  "url": "https://thumbgate.ai"
53
53
  },
54
54
  "knowsAbout": [
55
- "Stripe Connect",
56
- "Pretix plugin engineering",
57
- "Marketplace payments architecture",
58
55
  "AI agent governance",
59
56
  "Pre-action checks for AI coding agents"
60
57
  ],
@@ -62,7 +59,7 @@ __GA_BOOTSTRAP__
62
59
  "https://github.com/IgorGanapolsky",
63
60
  "https://www.npmjs.com/package/thumbgate"
64
61
  ],
65
- "mainEntityOfPage": "https://thumbgate.ai/learn/pretix-stripe-connect-marketplaces"
62
+ "mainEntityOfPage": "https://thumbgate.ai/"
66
63
  }
67
64
  </script>
68
65
 
@@ -74,7 +71,7 @@ __GA_BOOTSTRAP__
74
71
  "alternateName": "thumbgate",
75
72
  "url": "https://thumbgate.ai",
76
73
  "logo": "https://thumbgate.ai/assets/brand/thumbgate-logo-1200x360.png",
77
- "description": "ThumbGate ships pre-action gates for AI coding agents. Open-source CLI plus PreToolUse hooks that capture feedback, promote it to memory, generate prevention rules, and block repeated mistakes before the next tool call across Claude Code, Cursor, Codex, Gemini, Amp, Cline, and OpenCode.",
74
+ "description": "ThumbGate ships local PreToolUse checks for AI coding agents. Accepted feedback becomes local lessons, recurring failures can become prevention rules, risky tool calls warn and log by default, detected secret leaks hard-block, and strict mode blocks matching actions.",
78
75
  "founder": {
79
76
  "@type": "Person",
80
77
  "name": "Igor Ganapolsky",
@@ -94,44 +91,44 @@ __GA_BOOTSTRAP__
94
91
  "@type": "SoftwareApplication",
95
92
  "name": "ThumbGate",
96
93
  "alternateName": "thumbgate",
97
- "description": "ThumbGate stops you from paying for the same AI mistake twice. It is machine-speed pre-action defense for coding agents: thumbs-up/down feedback becomes history-aware lessons, shared lessons and org visibility, actionable remediations, agent surface inventory, and Pre-Action Checks that inspect workflow shape, environment evidence, budget, and repeated-failure memory before the next tool call across Claude Code, Cursor, Codex, Gemini, Amp, Cline, OpenCode, and any MCP-compatible agent.",
94
+ "description": "ThumbGate is a local pre-action governance runtime for AI coding agents. It stores accepted feedback as history-aware lessons, can derive prevention rules from recurring failures, and evaluates proposed tool calls before execution across configured Claude Code, Cursor, Codex, Gemini, Amp, Cline, OpenCode, and MCP-compatible integrations.",
98
95
  "applicationCategory": "DeveloperApplication",
99
96
  "operatingSystem": "Cross-platform, Node.js >=18.18.0",
100
97
  "license": "https://opensource.org/licenses/MIT",
101
98
  "url": "https://github.com/IgorGanapolsky/ThumbGate",
102
99
  "downloadUrl": "https://www.npmjs.com/package/thumbgate",
103
100
  "installUrl": "https://www.npmjs.com/package/thumbgate",
104
- "dateModified": "2026-04-09",
101
+ "dateModified": "2026-07-12",
105
102
  "creator": {
106
103
  "@type": "Person",
107
104
  "name": "Igor Ganapolsky",
108
105
  "url": "https://github.com/IgorGanapolsky"
109
106
  },
110
107
  "featureList": [
111
- "Prevent expensive AI mistakescatch bad commands, destructive database actions, unsafe publishes, and risky API calls before execution",
112
- "Make AI stop repeating mistakes thumbs-down feedback becomes history-aware lessons and Pre-Action Checks",
113
- "Turn AI into a reliable operator — checkpoint risky actions, enforce safe patterns, and keep proof of what changed",
108
+ "Inspect risky AI-agent actionsevaluate commands, database actions, publishes, and API calls before tool execution",
109
+ "Capture concrete correctionsaccepted feedback becomes history-aware local lessons and recurring failures can become Pre-Action Checks",
110
+ "Keep reviewable decisions — checkpoint risky actions and record why a call was allowed, warned, or denied",
114
111
  "Agent surface inventory — see which tools, MCP surfaces, and policy sources are actually active before rollout",
115
112
  "Actionable remediations — rank the next highest-ROI fixes from real feedback and risk pressure",
116
- "ThumbGate GPT for ChatGPT — preflight risky commands, refunds, deploys, and PR actions, capture typed thumbs-up/down lessons, and route users into local enforcement",
113
+ "ThumbGate GPT for ChatGPT — preflight risky commands, refunds, deploys, and PR actions, guide typed feedback capture, and route users to documented local setup",
117
114
  "Workflow Sentinel — score blast radius before PR, merge, release, and publish actions fire",
118
115
  "Workflow architecture checks — distinguish predefined workflows, parallel fan-out, and open-ended agents before execution",
119
116
  "Agentic development cycle control — maps Guide, Generate, Verify, and Solve into enforceable pre-action gates before risky tool calls execute",
120
117
  "Environment inspection evidence — require read-before-write, screenshots, API response checks, tests, or output validation for open-ended agent loops",
121
- "Parallel branch budgets — prevent agent desktops and fan-out workflows from silently multiplying token spend",
122
- "Docker Sandboxes routing — move high-risk local runs into isolated microVM-backed execution",
123
- "Hosted sandbox dispatch — signed isolated lane for team automations",
118
+ "Parallel branch budgets — surface budget pressure from agent desktops and fan-out workflows",
119
+ "Docker Sandboxes routing — recommend isolated execution for high-risk local runs",
120
+ "Signed sandbox-dispatch mechanism deployment-specific isolation helper that requires configuration and verification",
124
121
  "Domain Skill Packs — Stripe, Railway, database migration best practices",
125
- "Progressive Disclosure — 3-tier L1/L2/L3 loading cuts skill-pack token cost per the disclosureSavings metric in scripts/skill-packs.js",
122
+ "Progressive Disclosure — 3-tier L1/L2/L3 loading reports estimated disclosureSavings from scripts/skill-packs.js",
126
123
  "Hallucination Detection — decomposes claims into verifiable sub-claims",
127
124
  "PII Scanner — blocks emails, credit cards, SSNs in feedback and exports",
128
125
  "Background Agent Governance — per-agent pass rates, CI auto-feedback",
129
- "Memory Migration — imports Claude Code MEMORY.md into unlimited SQLite DB",
126
+ "Memory Migration — imports Claude Code MEMORY.md into the local lesson store",
130
127
  "Prompt-Level DLP — scans tool call inputs before execution",
131
- "Per-Step Scoring — every check decision becomes a DPO/KTO training signal",
128
+ "Per-Step Scoring — check decisions can become DPO/KTO training signals",
132
129
  "HuggingFace Export — share PII-redacted agent traces as open training datasets",
133
130
  "Unified Context — one-call context assembly with session, lessons, guards, and code-graph",
134
- "AI Authenticity Enforcement — every check reflects your team's actual standards, not generic AI patterns"
131
+ "AI Authenticity Enforcement — reviewable rules can encode operator-specific standards"
135
132
  ],
136
133
  "offers": [
137
134
  {
@@ -139,13 +136,13 @@ __GA_BOOTSTRAP__
139
136
  "name": "Free",
140
137
  "price": "0",
141
138
  "priceCurrency": "USD",
142
- "description": "Free local CLI enforcement for one developer captures, recalls, checks, and PreToolUse hook blocking after install"
139
+ "description": "Free local CLI for one developer: 2 feedback captures per day, 10 total, up to 3 active auto-promoted rules, no recall/search or exports, warn-and-log defaults, and hard blocking for detected secret leaks"
143
140
  },
144
141
  {
145
142
  "@type": "Offer",
146
143
  "name": "Enterprise",
147
144
  "priceCurrency": "USD",
148
- "description": "Contact-sales tier with custom pricing scoped after intake: a workflow hardening sprint, shared hosted lesson database, org dashboard visibility, shared enforcement, approval boundaries, audit-grade decision trail, regulatory gate templates, Docker Sandboxes guidance for risky local autonomy, and dedicated onboarding for teams shipping AI-generated changes",
145
+ "description": "Contact-sales tier with custom pricing scoped after intake for one workflow's approval boundaries, rollback plan, evidence requirements, and rollout support. Hosted team lesson sync and a hosted org dashboard are not general-availability runtime features.",
149
146
  "url": "https://thumbgate.ai/#workflow-sprint-intake"
150
147
  },
151
148
  {
@@ -153,7 +150,7 @@ __GA_BOOTSTRAP__
153
150
  "name": "Pro Monthly",
154
151
  "price": "19",
155
152
  "priceCurrency": "USD",
156
- "description": "Self-serve side lane for solo operators who want personal enforcement proof, a local dashboard, DPO export, team lesson export/import, and proof-ready exports",
153
+ "description": "Self-serve individual tier with unlimited rules and captures, history-aware recall and search, a personal local dashboard, DPO export, and operator-managed lesson export/import",
157
154
  "url": "https://thumbgate.ai/checkout/pro?plan_id=pro&landing_path=%2F"
158
155
  },
159
156
  {
@@ -246,14 +243,14 @@ __GA_BOOTSTRAP__
246
243
  {
247
244
  "@context": "https://schema.org",
248
245
  "@type": "HowTo",
249
- "name": "How to make your AI coding agent self-improving",
250
- "description": "Set up ThumbGate so your AI agent learns from every mistake and never repeats it a self-improvement loop powered by feedback enforcement and a trained local intervention policy.",
246
+ "name": "How to add Pre-Action Checks to an AI coding agent",
247
+ "description": "Configure ThumbGate so accepted feedback becomes local lessons and recurring failures can become checks that evaluate proposed tool calls before execution.",
251
248
  "step": [
252
249
  {
253
250
  "@type": "HowToStep",
254
251
  "position": 1,
255
252
  "name": "Install ThumbGate",
256
- "text": "Run: npx thumbgate init --agent claude-code. This installs the local CLI gateway and wires the agent's MCP transport automatically. No API key needed and the core path stays local."
253
+ "text": "Run: npx thumbgate init --agent claude-code. This installs the local CLI gateway and writes the supported agent integration. No API key is needed for the local path."
257
254
  },
258
255
  {
259
256
  "@type": "HowToStep",
@@ -265,16 +262,15 @@ __GA_BOOTSTRAP__
265
262
  "@type": "HowToStep",
266
263
  "position": 3,
267
264
  "name": "Prevention rules auto-generate",
268
- "text": "After repeated failures in the same domain, ThumbGate auto-generates prevention rules. These rules are injected into the agent's context at the start of every session via the recall MCP tool."
265
+ "text": "After qualifying repeated failures in the same domain, ThumbGate can auto-generate prevention rules. Configured integrations can load the resulting local lessons and rules."
269
266
  },
270
267
  {
271
268
  "@type": "HowToStep",
272
269
  "position": 4,
273
- "name": "Pre-action checks block the mistake",
274
- "text": "When the agent tries to repeat a known-bad action, the PreToolUse hook fires and physically blocks the tool call before execution. The agent cannot repeat the mistake."
270
+ "name": "Pre-action checks flag the mistake",
271
+ "text": "When a configured agent proposes a matching action, the PreToolUse hook records the decision before tool execution. Detected secret leaks and direct ThumbGate process-kill/environment-override commands deny by default; rm -rf, force-push, fetch-and-run, and direct guardrail-file edits warn by default. Set THUMBGATE_STRICT_ENFORCEMENT=1 to deny every matched blocking rule."
275
272
  }
276
273
  ],
277
- "totalTime": "PT5M",
278
274
  "tool": { "@type": "SoftwareApplication", "name": "thumbgate", "url": "https://www.npmjs.com/package/thumbgate" }
279
275
  }
280
276
  </script>
@@ -289,7 +285,7 @@ __GA_BOOTSTRAP__
289
285
  "name": "Does ThumbGate support model fine-tuning?",
290
286
  "acceptedAnswer": {
291
287
  "@type": "Answer",
292
- "text": "Yes. ThumbGate Pro includes a Model Hardening Advisor and LoRA JSONL export. Pro users can export their episodic memory as DPO (Direct Preference Optimization) pairs to fine-tune local models (like Llama 3 or Mistral) so they natively avoid repeating known mistakes."
288
+ "text": "ThumbGate Pro includes a Model Hardening Advisor plus LoRA JSONL and DPO preference-pair exports for use in a separate fine-tuning workflow. An export does not guarantee that a trained model will avoid a mistake; that outcome depends on the dataset, training process, model, and evaluation."
293
289
  }
294
290
  },
295
291
  {
@@ -297,23 +293,23 @@ __GA_BOOTSTRAP__
297
293
  "name": "How is ThumbGate different from model-training feedback loops?",
298
294
  "acceptedAnswer": {
299
295
  "@type": "Answer",
300
- "text": "Model-training feedback loops update weights. ThumbGate does not touch the model. It injects past feedback into context so your agent is shaped by your corrections in real time. Think of it as a behavioral immune system, not a training pipeline. The check blocks are hard enforcement, not soft suggestions."
296
+ "text": "ThumbGate's runtime keeps lessons and rules outside the model. A configured hook evaluates proposed tool calls before execution. Detected secret exfiltration plus commands that kill the gate process or enable its bypass variable deny by default; matching destructive deletes, force-pushes, and fetch-and-run commands warn by default. Strict mode (THUMBGATE_STRICT_ENFORCEMENT=1) turns matching warning-mode checks into denies."
301
297
  }
302
298
  },
303
299
  {
304
300
  "@type": "Question",
305
- "name": "What is the ThumbGate tech stack?",
301
+ "name": "What's the tech stack?",
306
302
  "acceptedAnswer": {
307
303
  "@type": "Answer",
308
- "text": "SQLite+FTS5 lesson DB, MemAlign-inspired dual recall, Thompson Sampling for adaptive checks, LanceDB vector search with Hugging Face embeddings, ContextFS context assembly, Bayesian belief updates, and PreToolUse hook enforcement."
304
+ "text": "SQLite+FTS5 lesson DB for fast full-text search. MemAlign-inspired dual recall (principle-based rules + episodic context). Thompson Sampling for adaptive check sensitivity per failure domain. LanceDB + Apache Arrow for local vector search with Hugging Face embeddings. ContextFS for context assembly. Bayesian belief updates on each memory. Configured PreToolUse hooks evaluate known-bad actions before execution; detected secret exfiltration and gate kill/bypass commands deny by default, while strict mode also denies matching warning-mode checks. The local path requires no cloud account."
309
305
  }
310
306
  },
311
307
  {
312
308
  "@type": "Question",
313
- "name": "What AI agents does ThumbGate work with?",
309
+ "name": "What AI agents and editors does this work with?",
314
310
  "acceptedAnswer": {
315
311
  "@type": "Answer",
316
- "text": "Claude Code, Cursor, Codex, Gemini CLI, Amp, Cline, OpenCode, and any MCP-compatible agent."
312
+ "text": "ThumbGate includes documented integration paths for Claude Code, Cursor, Codex, Gemini CLI, Amp, Cline, and OpenCode. Each agent must be configured through its hook or MCP setup; MCP compatibility alone does not install enforcement automatically. The Cursor runtime setup is npx thumbgate init --agent cursor, while the in-app Marketplace listing remains separate. VS Code can host an MCP-compatible agent, but this repo does not ship a standalone VS Code extension."
317
313
  }
318
314
  },
319
315
  {
@@ -321,7 +317,7 @@ __GA_BOOTSTRAP__
321
317
  "name": "Do I have to chat inside the ThumbGate GPT for enforcement?",
322
318
  "acceptedAnswer": {
323
319
  "@type": "Answer",
324
- "text": "No. The ThumbGate GPT is the ChatGPT entrypoint for checking proposed actions, capturing thumbs-up/down lessons, and getting setup help. Use it for advice and checkpointing; hard enforcement still runs locally where the agent executes after npx thumbgate init."
320
+ "text": "No. The ThumbGate GPT is a ChatGPT entrypoint for checking proposed actions and getting setup help. Local allow, warn, or deny enforcement runs where the coding agent executes and requires npx thumbgate init plus the documented integration setup."
325
321
  }
326
322
  },
327
323
  {
@@ -329,15 +325,15 @@ __GA_BOOTSTRAP__
329
325
  "name": "When should I use Pro versus the Workflow Hardening Sprint?",
330
326
  "acceptedAnswer": {
331
327
  "@type": "Answer",
332
- "text": "Start with the setup guide if you only need the local path. Choose Pro after one real blocked repeat when you want your own dashboard, DPO export, and proof-ready exports. Choose the Workflow Hardening Sprint when one workflow owner needs approval boundaries, rollback safety, and rollout proof before wider rollout."
328
+ "text": "Start with the setup guide if you only need the local path. Choose Pro when an individual operator wants higher limits, personal recall, a local dashboard, DPO export, and operator-managed lesson bundles. Choose the Workflow Hardening Sprint when one workflow owner needs to scope approval boundaries, rollback safety, and evidence requirements before a wider rollout claim."
333
329
  }
334
330
  },
335
331
  {
336
332
  "@type": "Question",
337
- "name": "How does ThumbGate reduce host blast radius for high-risk local runs?",
333
+ "name": "How do we keep high-risk autonomous runs off the host?",
338
334
  "acceptedAnswer": {
339
335
  "@type": "Answer",
340
- "text": "ThumbGate combines pre-action checks with execution guidance. Workflow Sentinel predicts risky local actions before they execute, and high-risk runs can be routed into Docker Sandboxes instead of running directly on the host. Enterprise workflows also have a signed hosted sandbox lane for isolated automation dispatch."
336
+ "text": "ThumbGate combines pre-action checks with execution guidance. Workflow Sentinel can recommend Docker Sandboxes for risky local actions. The package also contains a signed sandbox-dispatch mechanism, but each deployment must configure and verify that isolation boundary; it is not hosted team lesson sync or a generally available hosted org service."
341
337
  }
342
338
  },
343
339
  {
@@ -345,7 +341,7 @@ __GA_BOOTSTRAP__
345
341
  "name": "How are pre-action checks different from prompt rules?",
346
342
  "acceptedAnswer": {
347
343
  "@type": "Answer",
348
- "text": "Prompt rules are suggestions agents can ignore. Pre-Action Checks are enforcement they block the action before execution via PreToolUse hooks. Checks are auto-generated from feedback and use Thompson Sampling to adapt."
344
+ "text": "Prompt rules are a starting point, not a finish line. ThumbGate adds a human-feedback loop plus configured Pre-Action Checks at the tool-call boundary. The default policy denies detected secret exfiltration and gate kill/bypass commands while other matching high-risk checks warn; strict mode also denies matching warning-mode checks."
349
345
  }
350
346
  },
351
347
  {
@@ -353,31 +349,7 @@ __GA_BOOTSTRAP__
353
349
  "name": "How does ThumbGate fit the agentic development cycle?",
354
350
  "acceptedAnswer": {
355
351
  "@type": "Answer",
356
- "text": "Agentic development is converging around Guide, Generate, Verify, and Solve. ThumbGate adds the execution-control layer between those stages: project guidance and feedback become rules, generated tool calls are checked before execution, verification evidence is required for risky actions, and solved failures become reusable prevention gates."
357
- }
358
- },
359
- {
360
- "@type": "Question",
361
- "name": "How does ThumbGate prevent AI slop and protect brand authenticity?",
362
- "acceptedAnswer": {
363
- "@type": "Answer",
364
- "text": "AI slop happens when agents act without human judgment as a hard check — generating repetitive, generic outputs that erode trust and dilute your brand. ThumbGate inserts human thumbs-up/down between AI intent and execution. Every thumbs-down becomes a prevention rule that blocks the bad pattern permanently. Every thumbs-up reinforces what 'good' looks like for your specific context. Your agent's outputs reflect your actual standards, not generic AI patterns. This is authenticity enforcement at the tool-call level."
365
- }
366
- },
367
- {
368
- "@type": "Question",
369
- "name": "How is ThumbGate different from SpecLock?",
370
- "acceptedAnswer": {
371
- "@type": "Answer",
372
- "text": "SpecLock requires manually writing constraints or compiling them from a PRD. ThumbGate learns automatically from thumbs-up/down feedback and auto-generates prevention rules from repeated failures. SpecLock locks files from modification; ThumbGate blocks specific actions (like force-push) before they execute."
373
- }
374
- },
375
- {
376
- "@type": "Question",
377
- "name": "How is ThumbGate different from Mem0?",
378
- "acceptedAnswer": {
379
- "@type": "Answer",
380
- "text": "Mem0 is cloud-hosted memory for AI apps. ThumbGate is local-first enforcement. Mem0 remembers context but cannot block actions. ThumbGate captures feedback, promotes it to prevention rules, and physically blocks tool calls that match known failure patterns via PreToolUse hooks."
352
+ "text": "Agentic development is not just generation. Teams need Guide, Generate, Verify, and Solve working as a repeatable loop. ThumbGate can serve as the pre-action execution gate: guidance and accepted feedback can become rules, generated tool calls are evaluated before execution, rules can require verification evidence, and recurring solved failures can become reusable prevention gates."
381
353
  }
382
354
  }
383
355
  ]
@@ -747,7 +719,7 @@ __GA_BOOTSTRAP__
747
719
  <a href="#claude-code-section" class="nav-claude" onclick="posthog.capture('nav_claude_click')" style="display:none;">Claude</a>
748
720
  <a href="#workflow-sprint-intake" onclick="posthog.capture('workflow_sprint')" style="display:none;">Start Sprint</a>
749
721
  <a href="https://github.com/IgorGanapolsky/ThumbGate/releases/latest/download/thumbgate-claude-desktop.mcpb" target="_blank" rel="noopener" onclick="posthog.capture('nav_claude_extension_click',{cta:'install_claude_extension'})" class="nav-cta" style="background:#d97706;display:none;">Claude Extension</a>
750
- <a href="/checkout/pro?utm_source=website&utm_medium=nav&utm_campaign=pro_upgrade&cta_id=nav_start_pro&cta_placement=nav&plan_id=pro&landing_path=%2F" data-revenue-cta data-cta-id="nav_start_pro" data-cta-placement="nav" data-tier="pro" data-plan-id="pro" data-price="19" onclick="trackRevenueCta(this);try{posthog.capture('nav_pro_click',{cta:'nav_start_pro',tier:'pro',price:19})}catch(_){}" class="nav-cta">Start Pro — $19/mo</a>
722
+ <a href="/go/diagnostic?utm_source=website&utm_medium=nav&utm_campaign=money_today&utm_content=nav_diagnostic&cta_id=nav_pay_diagnostic&cta_placement=nav&plan_id=sprint_diagnostic" data-revenue-cta data-cta-id="nav_pay_diagnostic" data-cta-placement="nav" data-tier="service" data-plan-id="sprint_diagnostic" data-price="__SPRINT_DIAGNOSTIC_PRICE_DOLLARS__" onclick="trackRevenueCta(this);try{posthog.capture('nav_diagnostic_click',{cta:'nav_pay_diagnostic',price:__SPRINT_DIAGNOSTIC_PRICE_DOLLARS__})}catch(_){}" class="nav-cta">Pay $__SPRINT_DIAGNOSTIC_PRICE_DOLLARS__ diagnostic</a>
751
723
  </div>
752
724
  </div>
753
725
  </nav>
@@ -755,42 +727,61 @@ __GA_BOOTSTRAP__
755
727
  <!-- HERO -->
756
728
  <section class="hero">
757
729
  <div class="container">
758
- <div class="hero-badge">👍 👎 Local-first · open-source · Pro proof when it matters</div>
759
- <h1>Stop AI agents before they spend money, leak secrets, or break production.</h1>
760
- <p class="hero-lede">Claude Code, Cursor, Codex, Gemini CLI, and MCP tools now touch terminals, repos, databases, SaaS APIs, and cloud systems. ThumbGate checks the next tool call before it runs, blocks repeated failures from your thumbs-down feedback, and gives paid operators proof, sync, recall, and exports when local rules become business-critical.</p>
730
+ <div class="hero-badge">👍 👎 Local-first · open-source · enterprise governance when agents touch real systems</div>
731
+ <h1>Catch AI agents before they spend money, leak secrets, or break production.</h1>
732
+ <p class="hero-lede">Claude Code, Cursor, Codex, Gemini CLI, Amp, Cline, OpenCode, and MCP tools can touch terminals, repos, databases, SaaS APIs, and cloud systems. After a configured agent proposes a tool call, ThumbGate evaluates it before execution and records the decision. The default policy denies detected secret exfiltration plus commands that kill the ThumbGate gate process or enable its bypass environment variable; other matched high-risk classes such as destructive deletes, force-pushes, and fetch-and-run commands warn by default. Strict mode turns matching warning-mode checks into denies. The beachhead buyer is an enterprise engineering, security, or platform team that needs governed AI-agent execution before agents touch regulated or high-blast-radius workflows.</p>
761
733
 
762
734
  <div class="hero-signals" aria-label="June 2026 buyer signals">
763
735
  <a class="signal-pill signal-down" href="#june-2026-proof">MCP tool risk</a>
764
736
  <a class="signal-pill" href="#june-2026-proof">Managed-agent rollout</a>
765
737
  <a class="signal-pill" href="#june-2026-proof">Token spend pressure</a>
766
- <a class="signal-pill signal-up" href="#pricing">Free wedge, paid proof</a>
738
+ <a class="signal-pill signal-up" href="#workflow-sprint-intake">Regulated agent governance</a>
767
739
  </div>
768
740
 
769
- <div class="hero-proof-card" aria-label="ThumbGate blocking dangerous AI agent commands in real time">
770
- <img src="/media/thumbgate-demo.gif" alt="ThumbGate blocking an AI agent's rm -rf, git push --force, and chmod 777 in real time, while letting safe commands through" style="width:100%;display:block;border-radius:8px;" loading="lazy" />
741
+ <div class="hero-proof-card" aria-label="ThumbGate flagging dangerous AI agent commands in real time">
742
+ <img src="/media/thumbgate-demo.gif" alt="ThumbGate flagging an AI agent's rm -rf, git push --force, and chmod 777 in real time — flagging them by default and hard-blocking under strict mode — while letting safe commands through" style="width:100%;display:block;border-radius:8px;" loading="lazy" />
771
743
  </div>
772
744
 
773
745
  <div class="hero-actions">
774
- <a href="/checkout/pro?utm_source=website&utm_medium=hero_cta&utm_campaign=pro_upgrade&cta_id=hero_start_pro&cta_placement=hero&plan_id=pro&landing_path=%2F" data-revenue-cta data-cta-id="hero_start_pro" data-cta-placement="hero" data-tier="pro" data-plan-id="pro" data-price="19" onclick="trackRevenueCta(this);try{posthog.capture('hero_pro_checkout_click',{cta:'hero_start_pro',tier:'pro',price:19})}catch(_){}" class="btn-pro-page hero-pro hero-pro-primary">Start Pro — $19/mo</a>
775
- <a href="#workflow-sprint-intake" onclick="try{posthog.capture('hero_sprint_click',{cta:'sprint_intake'})}catch(_){};sendFirstPartyTelemetry('hero_sprint_intake_started',{ctaId:'hero_workflow_sprint',ctaPlacement:'hero',offer:'workflow_sprint'});" class="btn-pro-page hero-pro">Workflow Hardening Sprint →</a>
746
+ <a href="/go/diagnostic?utm_source=website&utm_medium=hero_cta&utm_campaign=money_today&utm_content=hero_diagnostic&cta_id=hero_workflow_sprint_diagnostic_checkout&cta_placement=hero&plan_id=sprint_diagnostic" data-revenue-cta data-cta-id="hero_workflow_sprint_diagnostic_checkout" data-cta-placement="hero" data-tier="service" data-plan-id="sprint_diagnostic" data-price="__SPRINT_DIAGNOSTIC_PRICE_DOLLARS__" data-sprint-paid-path="diagnostic" onclick="trackRevenueCta(this);sendFirstPartyTelemetry('workflow_sprint_diagnostic_checkout_started',{ctaId:'hero_workflow_sprint_diagnostic_checkout',ctaPlacement:'hero',offer:'sprint_diagnostic',price:__SPRINT_DIAGNOSTIC_PRICE_DOLLARS__});try{posthog.capture('hero_diagnostic_checkout_click',{cta:'hero_diagnostic',price:__SPRINT_DIAGNOSTIC_PRICE_DOLLARS__})}catch(_){}" class="btn-pro-page hero-pro hero-pro-primary hero-diagnostic">Pay $__SPRINT_DIAGNOSTIC_PRICE_DOLLARS__ diagnostic</a>
747
+ <a href="/go/sprint?utm_source=website&utm_medium=hero_cta&utm_campaign=money_today&utm_content=hero_sprint&cta_id=hero_workflow_sprint_checkout&cta_placement=hero&plan_id=workflow_sprint" data-revenue-cta data-cta-id="hero_workflow_sprint_checkout" data-cta-placement="hero" data-tier="service" data-plan-id="workflow_sprint" data-price="__WORKFLOW_SPRINT_PRICE_DOLLARS__" data-sprint-paid-path="sprint" onclick="trackRevenueCta(this);sendFirstPartyTelemetry('workflow_sprint_checkout_started',{ctaId:'hero_workflow_sprint_checkout',ctaPlacement:'hero',offer:'workflow_sprint',price:__WORKFLOW_SPRINT_PRICE_DOLLARS__});try{posthog.capture('hero_sprint_checkout_click',{cta:'hero_sprint',price:__WORKFLOW_SPRINT_PRICE_DOLLARS__})}catch(_){}" class="btn-pro-page hero-pro">Pay $__WORKFLOW_SPRINT_PRICE_DOLLARS__ sprint</a>
748
+ <a href="/checkout/pro?utm_source=website&utm_medium=hero_cta&utm_campaign=pro_upgrade&cta_id=hero_start_pro&cta_placement=hero&plan_id=pro&landing_path=%2F" data-revenue-cta data-cta-id="hero_start_pro" data-cta-placement="hero" data-tier="pro" data-plan-id="pro" data-price="19" onclick="trackRevenueCta(this);try{posthog.capture('hero_pro_checkout_click',{cta:'hero_start_pro',tier:'pro',price:19})}catch(_){}" class="btn-pro-page hero-pro">Start Pro — $19/mo</a>
776
749
  <a href="/go/install?utm_source=website&utm_medium=hero_cta&utm_campaign=install_free&cta_id=hero_install_cli&cta_placement=hero" onclick="event.preventDefault(); navigator.clipboard.writeText('npx thumbgate init'); this.textContent='Copied ✓ — paste in your repo'; setTimeout(()=>{this.textContent='Install Free CLI'},2000); try{posthog.capture('hero_install_click',{cta:'install_cli'})}catch(_){}" class="btn-free btn-install-hero" title="Click to copy: npx thumbgate init">Install Free CLI</a>
777
750
  </div>
751
+ <p class="hero-paid-note" style="margin-top:4px;">Money path today: <strong>Workflow Hardening Diagnostic ($__SPRINT_DIAGNOSTIC_PRICE_DOLLARS__)</strong> or <strong>Sprint ($__WORKFLOW_SPRINT_PRICE_DOLLARS__)</strong> for one repeated agent failure. Pro stays the solo self-serve lane. Prefer scoping first? <a href="#workflow-sprint-intake" style="color:var(--cyan);" onclick="try{posthog.capture('hero_sprint_click',{cta:'sprint_intake'})}catch(_){};sendFirstPartyTelemetry('hero_sprint_intake_started',{ctaId:'hero_workflow_sprint',ctaPlacement:'hero',offer:'workflow_sprint'});sendFirstPartyTelemetry('workflow_sprint_recovery_intake_clicked',{ctaId:'hero_workflow_sprint_recovery_intake',ctaPlacement:'hero',offer:'workflow_sprint_intake'});">Send workflow first</a>.</p>
778
752
 
779
753
  <div class="offer-router" aria-label="Choose the right ThumbGate path">
780
754
  <div class="offer-route primary">
781
- <strong>Solo operator: Start Pro</strong>
782
- <p>Unlimited rules, recall, sync, proof, exports.</p>
783
- <a href="/checkout/pro?utm_source=website&utm_medium=offer_router&cta_id=router_start_pro&cta_placement=offer_router&plan_id=pro" data-revenue-cta data-cta-id="router_start_pro" data-cta-placement="offer_router" data-tier="pro" data-plan-id="pro" data-price="19" onclick="trackRevenueCta(this);">Pay $19/mo with Stripe →</a>
755
+ <strong>Team / enterprise: buy proof this week</strong>
756
+ <p>One workflow. One repeated failure. Paid diagnostic or sprint with Stripe — credit applies when you continue to implementation.</p>
757
+ <a href="/go/diagnostic?utm_source=website&utm_medium=offer_router&utm_campaign=money_today&cta_id=router_pay_diagnostic&cta_placement=offer_router&plan_id=sprint_diagnostic" data-revenue-cta data-cta-id="router_pay_diagnostic" data-cta-placement="offer_router" data-tier="service" data-plan-id="sprint_diagnostic" data-price="__SPRINT_DIAGNOSTIC_PRICE_DOLLARS__" onclick="trackRevenueCta(this);sendFirstPartyTelemetry('workflow_sprint_diagnostic_checkout_started',{ctaId:'router_pay_diagnostic',ctaPlacement:'offer_router',offer:'sprint_diagnostic'});">Pay $__SPRINT_DIAGNOSTIC_PRICE_DOLLARS__ diagnostic →</a>
758
+ <a href="/go/sprint?utm_source=website&utm_medium=offer_router&utm_campaign=money_today&cta_id=router_pay_sprint&cta_placement=offer_router&plan_id=workflow_sprint" data-revenue-cta data-cta-id="router_pay_sprint" data-cta-placement="offer_router" data-tier="service" data-plan-id="workflow_sprint" data-price="__WORKFLOW_SPRINT_PRICE_DOLLARS__" style="display:block;margin-top:8px;" onclick="trackRevenueCta(this);sendFirstPartyTelemetry('workflow_sprint_checkout_started',{ctaId:'router_pay_sprint',ctaPlacement:'offer_router',offer:'workflow_sprint'});">Pay $__WORKFLOW_SPRINT_PRICE_DOLLARS__ sprint →</a>
784
759
  </div>
785
760
  <div class="offer-route">
786
- <strong>Enterprise workflow: Start with intake</strong>
787
- <p>One repeated failure, one owner, one proof plan.</p>
788
- <a href="#workflow-sprint-intake" onclick="sendFirstPartyTelemetry('workflow_sprint_intake_started',{ctaId:'router_workflow_sprint',ctaPlacement:'offer_router',offer:'workflow_sprint'});">Talk to us →</a>
761
+ <strong>Solo operator: Start Pro</strong>
762
+ <p>Unlimited rules, recall, proof, exports after one real caught repeat.</p>
763
+ <a href="/checkout/pro?utm_source=website&utm_medium=offer_router&cta_id=router_start_pro&cta_placement=offer_router&plan_id=pro" data-revenue-cta data-cta-id="router_start_pro" data-cta-placement="offer_router" data-tier="pro" data-plan-id="pro" data-price="19" onclick="trackRevenueCta(this);">Pay $19/mo with Stripe →</a>
789
764
  </div>
790
765
  <div class="offer-route">
791
- <strong>Still evaluating: Free CLI</strong>
792
- <p>2 captures/day, 3 active rules. Enough to prove one blocked repeat.</p>
766
+ <strong>Still evaluating: Free CLI or intake</strong>
767
+ <p>2 captures/day, 3 active rules. Or send the workflow if you need fit review before paying.</p>
793
768
  <button data-router-install onclick="copyInstall(this)"><span class="copy-hint">Copy npx thumbgate init</span></button>
769
+ <a href="#workflow-sprint-intake" style="display:block;margin-top:10px;color:var(--cyan);font-weight:700;text-decoration:none;" onclick="sendFirstPartyTelemetry('workflow_sprint_intake_started',{ctaId:'router_workflow_sprint',ctaPlacement:'offer_router',offer:'workflow_sprint'});sendFirstPartyTelemetry('workflow_sprint_recovery_intake_clicked',{ctaId:'router_workflow_sprint_recovery_intake',ctaPlacement:'offer_router',offer:'workflow_sprint_intake'});">Send workflow first →</a>
770
+ </div>
771
+ </div>
772
+
773
+ <div style="max-width:920px;margin:22px auto 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px;text-align:left;">
774
+ <div style="border:1px solid rgba(34,211,238,0.25);border-radius:10px;background:rgba(34,211,238,0.055);padding:16px;">
775
+ <strong style="display:block;color:var(--cyan);margin-bottom:6px;">Ideal customer</strong>
776
+ <span style="color:var(--text-dim);font-size:13px;line-height:1.55;">Enterprise engineering, security, and platform teams already using AI coding agents in repos, CI/CD, SaaS APIs, cloud operations, or audited workflows.</span>
777
+ </div>
778
+ <div style="border:1px solid rgba(74,222,128,0.24);border-radius:10px;background:rgba(74,222,128,0.055);padding:16px;">
779
+ <strong style="display:block;color:var(--green);margin-bottom:6px;">Pain</strong>
780
+ <span style="color:var(--text-dim);font-size:13px;line-height:1.55;">Security is the pain: agents can repeat dangerous actions. Enterprise governance is the budget: policy, auditability, approvals, and shared prevention before execution.</span>
781
+ </div>
782
+ <div style="border:1px solid rgba(168,85,247,0.24);border-radius:10px;background:rgba(168,85,247,0.055);padding:16px;">
783
+ <strong style="display:block;color:#c084fc;margin-bottom:6px;">Partnership fit</strong>
784
+ <span style="color:var(--text-dim);font-size:13px;line-height:1.55;">Detection and coordination layers can identify drift. ThumbGate turns approved findings into enforceable PreToolUse rules with decision evidence.</span>
794
785
  </div>
795
786
  </div>
796
787
 
@@ -803,7 +794,7 @@ __GA_BOOTSTRAP__
803
794
  </div>
804
795
  <figure style="max-width:760px;margin:32px auto 0;padding:20px 24px;border-left:3px solid var(--cyan);background:rgba(34,211,238,0.04);border-radius:0 8px 8px 0;">
805
796
  <blockquote style="margin:0;font-size:18px;line-height:1.5;color:var(--text);font-style:italic;">&ldquo;A better dashboard doesn&rsquo;t make the agents more reliable. The hard part isn&rsquo;t visibility. It&rsquo;s trust.&rdquo;</blockquote>
806
- <figcaption style="margin-top:12px;font-size:13px;color:var(--text-muted);">— Rob May, CEO &amp; co-founder, Neurometric AI, in <a href="https://thenewstack.io/claude-code-agent-view/" target="_blank" rel="noopener" style="color:var(--cyan);">The New Stack</a> on Anthropic&rsquo;s Claude Code Agent View (May 2026). ThumbGate is the open-source layer that makes the trust part real: PreToolUse gates, thumbs-down to rule, audit trail on every interception.</figcaption>
797
+ <figcaption style="margin-top:12px;font-size:13px;color:var(--text-muted);">— Rob May, CEO &amp; co-founder, Neurometric AI, in <a href="https://thenewstack.io/claude-code-agent-view/" target="_blank" rel="noopener" style="color:var(--cyan);">The New Stack</a> on Anthropic&rsquo;s Claude Code Agent View (May 2026). This is Rob May describing the industry, not an endorsement of ThumbGate. ThumbGate addresses that trust problem with configured PreToolUse gates, accepted feedback, explicit prevention rules, and local decision records.</figcaption>
807
798
  </figure>
808
799
  <figure style="max-width:760px;margin:24px auto 0;padding:20px 24px;border-left:3px solid var(--cyan);background:rgba(34,211,238,0.04);border-radius:0 8px 8px 0;">
809
800
  <p style="margin:0 0 8px;font-size:14px;color:var(--text-muted);text-transform:uppercase;letter-spacing:0.08em;">Local-first is the new default</p>
@@ -812,8 +803,8 @@ __GA_BOOTSTRAP__
812
803
  </figure>
813
804
  <div class="first-check-card" id="first-check">
814
805
  <div class="section-label" style="text-align:left;margin-bottom:8px;">First-Dollar Activation Path</div>
815
- <h2>Block your first repeated AI mistake in 5 minutes.</h2>
816
- <p>Install, give one thumbs-down, and let the PreToolUse hook stop that failure from rerunning. Upgrade only when you need dashboards, exports, or shared team enforcement.</p>
806
+ <h2>Run your first pre-action check locally.</h2>
807
+ <p>Install ThumbGate, capture concrete feedback, and let the configured PreToolUse hook flag a matching action before execution. Upgrade only when you need higher limits, recall, a personal dashboard, or exports.</p>
817
808
  <div class="first-check-steps">
818
809
  <div class="first-check-step">
819
810
  <strong>1. Install ThumbGate</strong>
@@ -821,11 +812,11 @@ __GA_BOOTSTRAP__
821
812
  </div>
822
813
  <div class="first-check-step">
823
814
  <strong>2. Give feedback</strong>
824
- <p>Use thumbs up for a good pattern and thumbs down for a failure. ThumbGate distills the correction into a concrete prevention rule.</p>
815
+ <p>Use thumbs up for a good pattern and thumbs down with concrete context for a failure. Accepted feedback becomes a local lesson; recurring failures can be promoted into prevention rules.</p>
825
816
  </div>
826
817
  <div class="first-check-step">
827
- <strong>3. The repeat gets blocked</strong>
828
- <p>The next matching tool call is stopped before execution, with a reason the agent can use to choose a safer plan.</p>
818
+ <strong>3. The repeat gets flagged</strong>
819
+ <p>A matching tool call is evaluated and recorded before execution, with a reason the agent can use to choose a safer plan. Detected secret exfiltration and commands that kill the gate process or enable its bypass variable are denied by default; strict mode also denies matching warning-mode checks.</p>
829
820
  </div>
830
821
  </div>
831
822
  </div>
@@ -843,11 +834,11 @@ __GA_BOOTSTRAP__
843
834
  </nav>
844
835
  <div class="marketing-test-copy" hidden>
845
836
  <div class="hero-thumbs">👍👎</div>
846
- <a class="signal-pill signal-up">Thumbs-down once, blocked forever</a>
847
- <a class="signal-pill signal-down">Block repeat hallucinations before the model sees them</a>
837
+ <a class="signal-pill signal-up">Accepted feedback becomes local lessons</a>
838
+ <a class="signal-pill signal-down">Evaluate proposed tool calls before execution</a>
848
839
  <p class="hero-persona">For consultancies, platform teams, and AI product teams that want workflow governance, CLI-first rollout, and a reliable operator.</p>
849
840
  <p>Have one AI-agent failure that keeps repeating? Start with one real workflow, one repeated failure pattern, enforceable pre-action gates, and a short audit trail your team can keep.</p>
850
- <p>Prove one blocked repeat before asking anyone to buy. Give <code>thumbs up</code> when the agent follows your standards, <code>thumbs down</code> when it misses. Upgrade after one real blocked repeat.</p>
841
+ <p>Prove one evaluated repeat before asking anyone to buy. Give <code>thumbs up</code> when the agent follows your standards and a concrete <code>thumbs down</code> when it misses. Upgrade when the individual operator needs higher limits, recall, a personal dashboard, or exports.</p>
851
842
  <p>Workflow governance for isolated execution: ThumbGate pairs policy checks with Docker Sandboxes, signed hosted sandbox dispatch, Changeset evidence, and exact main-branch merge commit verification before release claims ship.</p>
852
843
  <!--
853
844
  Hidden test/asserter strings — required by tests/public-landing.test.js regex assertions
@@ -860,7 +851,7 @@ __GA_BOOTSTRAP__
860
851
  <span data-cta="hero_workflow_sprint_intake">ctaId: 'hero_workflow_sprint' ctaId: 'hero_workflow_sprint_recovery_intake' workflow_sprint_intake_started workflow_sprint_recovery_intake_clicked hero_workflow_sprint_recovery_intake</span>
861
852
  <span data-anchor="dashboard-preview">dashboard-preview What your Pro dashboard looks like check:no-force-push</span>
862
853
  <span data-anchor="team-intake-form">Start Enterprise Pilot Intake id="team-pilot-intake-form" data-team-intake-form name="ctaPlacement" value="team_visible_intake" name="utmMedium" value="visible_team_intake" name="planId" value="team" name="ctaId" value="workflow_sprint_intake" Enterprise checkout happens after scope. team_workflow_sprint_recovery_intake scope_first workflow_sprint_intake_started workflow_sprint_intake_submit_attempted pricing_team_intake team_intake_started</span>
863
- <span data-anchor="chatgpt-context">No, you do not have to chat inside the GPT forever. ChatGPT is the discovery and memory surface. Do not rely on ChatGPT's native rating buttons for ThumbGate memory. Explore GPTs choose the GPT by Igor Ganapolsky Programming Do I have to chat inside the ThumbGate GPT for enforcement? capture thumbs-up/down lessons Real blocking for coding agents still runs locally adapters/chatgpt/INSTALL.md Native ChatGPT rating buttons are not the ThumbGate capture path. thumbs up: this review named exact files, commands, and tests. thumbs down: the answer ignored my request.</span>
854
+ <span data-anchor="chatgpt-context">No, you do not have to chat inside the GPT forever. ChatGPT is a discovery and checkpointing surface. Do not rely on ChatGPT's native rating buttons for ThumbGate memory. Explore GPTs choose the GPT by Igor Ganapolsky Programming Do I have to chat inside the ThumbGate GPT for enforcement? capture typed thumbs-up/down feedback Local allow/warn/deny enforcement for coding agents requires a configured integration adapters/chatgpt/INSTALL.md Native ChatGPT rating buttons are not the ThumbGate capture path. thumbs up: this review named exact files, commands, and tests. thumbs down: the answer ignored my request.</span>
864
855
  </div>
865
856
  </div>
866
857
  </div>
@@ -869,7 +860,7 @@ __GA_BOOTSTRAP__
869
860
  <section class="compatibility" id="why-not-diy" aria-label="Why not write your own hooks">
870
861
  <div class="container">
871
862
  <h2>“Why not just write my own PreToolUse hooks?”</h2>
872
- <p class="hero-lede" style="max-width:760px;margin:0 auto 18px;">You can — on one machine, for one agent, until the next breaking change. ThumbGate is that idea, maintained: a 👎 becomes a rule that <strong>propagates across every agent</strong> Claude Code, Cursor, Codex, Gemini, Amp, Cline, OpenCode and every machine, with adapters kept current so you’re not patching shell scripts each release. Hand-written hooks don’t learn, don’t sync, and don’t survive a teammate’s laptop.</p>
863
+ <p class="hero-lede" style="max-width:760px;margin:0 auto 18px;">You can — on one machine, for one agent, until the next breaking change. ThumbGate is that idea, maintained: accepted feedback becomes local lessons, recurring failures can become explicit rules, and those rules can be reused by supported agents configured against the same local install scope. Claude Code, Cursor, Codex, Gemini, Amp, Cline, and OpenCode each require their documented integration setup. Hand-written hooks do not automatically provide ThumbGate's lesson store, rule promotion, local decision records, or adapter tests.</p>
873
864
  <p><a href="/compare/claude-code-hooks">See ThumbGate vs. hand-written hooks →</a></p>
874
865
  </div>
875
866
  </section>
@@ -882,11 +873,11 @@ __GA_BOOTSTRAP__
882
873
  <div class="agent-grid">
883
874
  <div class="agent-card">
884
875
  <h3>MCP and tool lockdown</h3>
885
- <p>As MCP servers and hosted tools spread, the failure mode is no longer just a bad answer. It is an agent calling the wrong tool with real developer permissions. ThumbGate sells the local allow/block layer before the tool call executes.</p>
876
+ <p>As MCP servers and hosted tools spread, the failure mode is no longer just a bad answer. It is an agent calling the wrong tool with real developer permissions. ThumbGate provides a local allow, warn, or deny decision before a configured tool call executes.</p>
886
877
  </div>
887
878
  <div class="agent-card">
888
879
  <h3>Managed agents need receipts</h3>
889
- <p>Managed background agents can multiply output, but every extra autonomous run needs evidence, rollback boundaries, and approval rules. ThumbGate turns “agent did work” into “this exact risky action was allowed or blocked for this reason.”</p>
880
+ <p>Managed background agents can multiply output, but every extra autonomous run needs evidence, rollback boundaries, and approval rules. ThumbGate records why a configured pre-action check allowed, warned on, or denied a proposed action.</p>
890
881
  </div>
891
882
  <div class="agent-card">
892
883
  <h3>Tokenmaxxing backlash</h3>
@@ -894,11 +885,11 @@ __GA_BOOTSTRAP__
894
885
  </div>
895
886
  <div class="agent-card">
896
887
  <h3>Production code by AI</h3>
897
- <p>When teams claim most new production code is AI-authored, the real enterprise question becomes auditability. ThumbGate maps corrections to prevention rules, then records the enforcement evidence reviewers need.</p>
888
+ <p>When teams claim most new production code is AI-authored, the real enterprise question becomes auditability. ThumbGate can promote accepted recurring corrections into prevention rules and retain the local gate evidence available to reviewers.</p>
898
889
  </div>
899
890
  </div>
900
891
  <div style="margin:22px auto 0;max-width:900px;border:1px solid rgba(74,222,128,0.26);border-radius:8px;background:rgba(74,222,128,0.07);padding:16px 18px;color:var(--text-muted);">
901
- <strong style="color:var(--green);">Data-science posture:</strong> use the free CLI as acquisition, treat Pro checkout starts and workflow-intake submissions as intent, and promote only the offer whose lower credible conversion bound beats zero. With the current low-traffic data, the next experiment should optimize clarity and qualified intake before scaling paid traffic.
892
+ <strong style="color:var(--green);">Data-science posture:</strong> treat Pro checkout starts and workflow-intake submissions as intent, not revenue. Make conversion or traction claims only from authenticated billing and analytics telemetry; this page does not publish a current customer or revenue count.
902
893
  </div>
903
894
  </div>
904
895
  </section>
@@ -921,12 +912,12 @@ __GA_BOOTSTRAP__
921
912
  </a>
922
913
  <a class="cycle-card" href="/learn/ac-dc-runtime-enforcement" rel="noopener" aria-label="Read the AC/DC mapping framework article" onclick="try{posthog.capture('agentic_cycle_card_click',{stage:'verify'})}catch(_){}">
923
914
  <h3>Verify</h3>
924
- <p>Pre-Action Checks require inspection evidence, tests, CI, screenshots, API responses, or human approval before high-risk actions proceed.</p>
915
+ <p>Pre-Action Checks can require inspection evidence, tests, CI, screenshots, API responses, or human approval for configured high-risk actions.</p>
925
916
  <div class="card-arrow">Read the AC/DC map →</div>
926
917
  </a>
927
918
  <a class="cycle-card" href="/lessons" rel="noopener" aria-label="Explore the lessons library and generated rules" onclick="try{posthog.capture('agentic_cycle_card_click',{stage:'solve'})}catch(_){}">
928
919
  <h3>Solve</h3>
929
- <p>Blocked failures and accepted fixes become lessons, shared rules, DPO exports, and audit events so the same mistake is not paid for again.</p>
920
+ <p>Accepted feedback can become local lessons and recurring failures can become rules. Pro operators can export DPO data and lesson bundles for separately reviewed reuse.</p>
930
921
  <div class="card-arrow">Explore the lessons →</div>
931
922
  </a>
932
923
  </div>
@@ -945,20 +936,20 @@ __GA_BOOTSTRAP__
945
936
  <div class="code-dot red"></div>
946
937
  <div class="code-dot yellow"></div>
947
938
  <div class="code-dot green"></div>
948
- <span>terminal — see it work in 30 seconds</span>
939
+ <span>terminal — local setup</span>
949
940
  </div>
950
941
  <div class="code-body" style="font-size:14px;">
951
- <div><span class="comment"># Install in 30 seconds</span></div>
942
+ <div><span class="comment"># Install the local CLI</span></div>
952
943
  <div><span class="fn">npx</span> thumbgate init</div>
953
944
  <div>&nbsp;</div>
954
945
  <div><span class="comment"># Your agent tries to delete production db...</span></div>
955
- <div><span class="keyword">⛔ Check blocked:</span> <span class="string">"Never run DROP on production tables"</span></div>
956
- <div><span class="comment"># Rule auto-generated from your previous 👎</span></div>
946
+ <div><span class="keyword">⚠️ Check flagged:</span> <span class="string">"Never run DROP on production tables"</span> <span class="comment"># blocks under strict mode</span></div>
947
+ <div><span class="comment"># Rule promoted from accepted recurring feedback</span></div>
957
948
  <div>&nbsp;</div>
958
- <div><span class="comment"># That's it. One thumbs-down = one permanent check.</span></div>
949
+ <div><span class="comment"># Matching warning-mode checks deny when strict mode is enabled.</span></div>
959
950
  </div>
960
951
  </div>
961
- <p style="text-align:center;margin-top:16px;font-size:14px;color:var(--text-muted);">This is the entire product in 2 lines. Install, give feedback, checks auto-generate.</p>
952
+ <p style="text-align:center;margin-top:16px;font-size:14px;color:var(--text-muted);">Install the local runtime, capture concrete feedback, and inspect the resulting lessons and checks.</p>
962
953
  </div>
963
954
  </section>
964
955
 
@@ -966,11 +957,11 @@ __GA_BOOTSTRAP__
966
957
  <div class="container">
967
958
  <div class="section-label">Deterministic Prevention</div>
968
959
  <h2 class="section-title">Native thumbs are a black box. ThumbGate is the inspectable control layer.</h2>
969
- <p style="text-align:center;font-size:16px;color:var(--text-muted);max-width:900px;margin:0 auto 28px;line-height:1.7;">Codex, Claude Code, ChatGPT, and other agent surfaces can collect preference signals, but you usually cannot see exactly what changed, which rule will fire, or why a future tool call is allowed. ThumbGate keeps the prevention layer outside the model: typed feedback becomes a local lesson, repeated mistakes become explicit rules, and every block names the matched rule, source lesson, tool call, and audit event.</p>
960
+ <p style="text-align:center;font-size:16px;color:var(--text-muted);max-width:900px;margin:0 auto 28px;line-height:1.7;">Codex, Claude Code, ChatGPT, and other agent surfaces can collect preference signals, but you usually cannot see exactly what changed, which rule will fire, or why a future tool call is allowed. ThumbGate keeps the prevention layer outside the model: accepted typed feedback becomes a local lesson, recurring failures can become explicit rules, and gate results expose the matched check and decision reason available at evaluation time.</p>
970
961
  <div class="agent-grid">
971
962
  <div class="agent-card">
972
963
  <h3>Black-box memory</h3>
973
- <p>Native thumbs and vendor memories may improve future behavior, but they do not give teams a deterministic allow/block contract at the moment an agent touches files, terminals, APIs, or CI.</p>
964
+ <p>Native thumbs and vendor memories may improve future behavior, but they do not provide ThumbGate's explicit local allow, warn, or deny contract at the moment a configured agent touches files, terminals, APIs, or CI.</p>
974
965
  </div>
975
966
  <div class="agent-card">
976
967
  <h3>Inspectable ThumbGate memory</h3>
@@ -987,7 +978,7 @@ __GA_BOOTSTRAP__
987
978
  <li><strong>Agent security is now mainstream risk.</strong> Coding agents run shell commands, write files, query databases, and chain actions with developer permissions, so unattended autonomy needs a local policy boundary.</li>
988
979
  <li><strong>MCP adoption is accelerating.</strong> More tools are becoming agent-callable through shared protocols, which means one cross-agent governance layer beats one-off prompt rules per app.</li>
989
980
  <li><strong>Managed-agent output needs audit evidence.</strong> Background agents, subagents, and workflow runners can ship more work, but buyers need receipts for what was blocked, approved, and verified.</li>
990
- <li><strong>Repeated failures waste cash and trust.</strong> Every repeat burns tokens, review time, and release confidence. ThumbGate turns the first correction into a reusable prevention check.</li>
981
+ <li><strong>Repeated failures waste cash and trust.</strong> Repeats can burn tokens, review time, and release confidence. ThumbGate can promote accepted recurring feedback into a reusable prevention check.</li>
991
982
  </ul>
992
983
  <p style="margin:12px 0 0;font-size:13px;color:var(--text-dim);">Sources to verify the market timing: <a href="https://www.docker.com/blog/ai-coding-agent-horror-stories-security-risks/" target="_blank" rel="noopener" style="color:var(--cyan);">Docker on AI coding agent security risks</a>, <a href="https://www.techradar.com/pro/how-ai-agents-are-wrecking-havoc-in-legacy-security-setups-and-enterprises-are-catching-up" target="_blank" rel="noopener" style="color:var(--cyan);">TechRadar on enterprise agent security pressure</a>, and <a href="https://www.techradar.com/pro/zendesk-becomes-the-latest-to-adopt-mcp-to-futureproof-customers-in-the-ai-first-era" target="_blank" rel="noopener" style="color:var(--cyan);">current MCP adoption coverage</a>.</p>
993
984
  </div>
@@ -1017,7 +1008,7 @@ __GA_BOOTSTRAP__
1017
1008
  <div class="container">
1018
1009
  <div class="gpt-panel" style="border-color:rgba(217,119,6,0.3);background:linear-gradient(135deg, rgba(217,119,6,0.06) 0%, rgba(34,211,238,0.04) 100%);">
1019
1010
  <div class="section-label" style="text-align:left;color:#d97706;">Claude Code · Claude Desktop · Claude Extension</div>
1020
- <h2>The fastest path for Claude users: install the extension and start blocking mistakes.</h2>
1011
+ <h2>Configure ThumbGate for Claude Code or Claude Desktop.</h2>
1021
1012
  <p>ThumbGate ships a published Claude Desktop extension bundle (<code>.mcpb</code>) you can install today. Claude Code users can also add the repo marketplace plugin immediately. No waiting for directory approval.</p>
1022
1013
  <div class="gpt-steps">
1023
1014
  <div class="gpt-step">
@@ -1030,7 +1021,7 @@ __GA_BOOTSTRAP__
1030
1021
  </div>
1031
1022
  <div class="gpt-step">
1032
1023
  <strong>3. Give feedback, checks auto-generate</strong>
1033
- <p>Type <code>thumbs down</code> when Claude makes a mistake. ThumbGate distills a lesson from up to 8 prior entries and blocks the pattern permanently via PreToolUse hooks.</p>
1024
+ <p>Type a concrete <code>thumbs down</code> when Claude makes a mistake. Accepted feedback can distill a lesson from up to 8 prior entries, and recurring failures can become rules evaluated by the configured PreToolUse hook. Detected secret exfiltration is denied by default; strict mode also denies matching warning-mode checks.</p>
1034
1025
  </div>
1035
1026
  </div>
1036
1027
  <div style="display:flex;gap:12px;flex-wrap:wrap;">
@@ -1049,7 +1040,7 @@ __GA_BOOTSTRAP__
1049
1040
  <div class="gpt-panel">
1050
1041
  <div class="section-label" style="text-align:left;">ChatGPT Entry Point · Live ThumbGate GPT for ChatGPT</div>
1051
1042
  <h2>Use the GPT as a preflight desk for risky commands, refunds, deploys, and PR actions.</h2>
1052
- <p>ThumbGate should meet users where they already ask AI for help. The live GPT is the fastest way to preflight a risky action, capture a typed thumbs-up/down lesson, and prove the enforcement loop before installing anything. As ChatGPT ads roll out, this matters more: ChatGPT can stay the discovery and checkpointing layer, while ThumbGate remains the hard execution boundary after <code>npx thumbgate init</code>.</p>
1043
+ <p>The live GPT is a ChatGPT entrypoint for preflighting a proposed action and finding setup guidance. It does not create a local execution boundary by itself. Local allow, warn, or deny decisions require <code>npx thumbgate init</code> plus the documented integration for the agent that executes the tool call.</p>
1053
1044
  <div class="gpt-steps">
1054
1045
  <div class="gpt-step">
1055
1046
  <strong>1. Open the live GPT</strong>
@@ -1061,7 +1052,7 @@ __GA_BOOTSTRAP__
1061
1052
  </div>
1062
1053
  <div class="gpt-step">
1063
1054
  <strong>3. Enforce locally</strong>
1064
- <p>Run <code>npx thumbgate init</code> in the repo so Pre-Action Checks block repeated mistakes before the coding agent executes them.</p>
1055
+ <p>Run <code>npx thumbgate init</code> in the repo and configure the documented agent integration so Pre-Action Checks evaluate proposed tool calls before execution. The default policy denies detected secret exfiltration plus commands that kill the gate process or enable its bypass variable.</p>
1065
1056
  </div>
1066
1057
  </div>
1067
1058
  <div style="display:flex;gap:12px;flex-wrap:wrap;">
@@ -1069,7 +1060,7 @@ __GA_BOOTSTRAP__
1069
1060
  <a href="https://github.com/IgorGanapolsky/ThumbGate/blob/main/adapters/chatgpt/INSTALL.md" class="btn-free" target="_blank" rel="noopener" style="display:inline-flex;align-items:center;padding:12px 20px;border-radius:8px;">ChatGPT Actions setup</a>
1070
1061
  <a href="/guides/chatgpt-ads-trust" class="btn-free" style="display:inline-flex;align-items:center;padding:12px 20px;border-radius:8px;">Why ChatGPT ads need checks</a>
1071
1062
  </div>
1072
- <p class="gpt-note"><strong>Find it fast:</strong> if the direct link does not open, go to <strong>Explore GPTs</strong>, search <code>ThumbGate</code>, and choose the GPT by Igor Ganapolsky in <strong>Programming</strong>. <strong>Plain English rule:</strong> ChatGPT is the discovery and memory surface for advice, checkpointing, and typed feedback capture. One typed signal becomes one remembered rule. The hard Reliability Gateway still runs in the local agent or CI lane.</p>
1063
+ <p class="gpt-note"><strong>Find it fast:</strong> if the direct link does not open, go to <strong>Explore GPTs</strong>, search <code>ThumbGate</code>, and choose the GPT by Igor Ganapolsky in <strong>Programming</strong>. <strong>Plain English rule:</strong> ChatGPT is the discovery and checkpointing surface. Accepted typed feedback can become a local lesson; recurring failures can become rules. The Reliability Gateway still runs in the configured local agent or CI lane.</p>
1073
1064
  </div>
1074
1065
  </div>
1075
1066
  </section>
@@ -1091,7 +1082,7 @@ __GA_BOOTSTRAP__
1091
1082
  </a>
1092
1083
  <a class="compat-card" href="/guide" rel="noopener">
1093
1084
  <h3>🤖 AI CLIs</h3>
1094
- <p>Claude Code, Codex, Gemini CLI, Amp, and OpenCode all use the same gateway and memory model. Any MCP-compatible agent gets pre-action checks, feedback memory, and enforcement out of the box.</p>
1085
+ <p>Claude Code, Codex, Gemini CLI, Amp, and OpenCode can use the same gateway and memory model after their documented integration is configured. Other MCP-compatible agents require an equivalent MCP or hook setup.</p>
1095
1086
  <div class="card-arrow">Open the setup guide →</div>
1096
1087
  </a>
1097
1088
  <a class="compat-card seo-card" href="/guides/hermes-agent-guardrails" rel="noopener">
@@ -1111,7 +1102,7 @@ __GA_BOOTSTRAP__
1111
1102
  </a>
1112
1103
  <a class="compat-card seo-card" href="/guides/gcp-mcp-guardrails" rel="noopener">
1113
1104
  <h3>☁️ Google Data Agent Kit</h3>
1114
- <p>Cloud Next 2026 shipped BigQuery, Spanner, AlloyDB, and Cloud SQL as MCP tool calls into Claude Code, Codex, and Gemini CLI. ThumbGate checks the destructive ones DROP on prod datasets, unscoped DELETEs, IAM escalation before they fire.</p>
1105
+ <p>When database and IAM operations are exposed as agent tool calls, ThumbGate can evaluate configured patterns such as production DROP, unscoped DELETE, or IAM escalation before execution. The resulting action depends on the matched rule and enforcement mode.</p>
1115
1106
  <div class="card-arrow">Read the GCP guardrails guide →</div>
1116
1107
  </a>
1117
1108
  <a class="compat-card" href="/codex-plugin?utm_source=website&utm_medium=compatibility&utm_campaign=codex_plugin&cta_id=compat_codex_plugin&cta_placement=compatibility" rel="noopener" onclick="if(typeof posthog!=='undefined')posthog.capture('compat_codex_plugin_click',{cta:'open_codex_plugin_page'})">
@@ -1120,13 +1111,13 @@ __GA_BOOTSTRAP__
1120
1111
  <div class="card-arrow">Open the Codex install page →</div>
1121
1112
  </a>
1122
1113
  <a class="compat-card" href="/guides/cursor-prevent-repeated-mistakes" rel="noopener">
1123
- <h3>🎯 Cursor plugin <span style="font-size:12px;font-weight:500;color:var(--text-muted);">(Marketplace review pending)</span></h3>
1124
- <p>Drop the ThumbGate MCP config into <code>.cursor/mcp.json</code> and Cursor gets the same pre-action checks as Claude Code and Codex. Ships with bundled rules, commands, hooks, and agents. The runtime install works today via <code>npx thumbgate init --agent cursor</code>; the official Cursor Marketplace listing was submitted 2026-05-19 and is awaiting Cursor's manual review.</p>
1114
+ <h3>🎯 Cursor integration</h3>
1115
+ <p>Run <code>npx thumbgate init --agent cursor</code> or configure <code>.cursor/mcp.json</code> through the documented setup path. The npm runtime path is separate from any in-app Marketplace listing.</p>
1125
1116
  <div class="card-arrow">Read the Cursor guide →</div>
1126
1117
  </a>
1127
1118
  <a class="compat-card" href="/guide" rel="noopener">
1128
1119
  <h3>✏️ Editor workflows</h3>
1129
- <p>VS Code works when you run an MCP-compatible agent inside it (Continue, Cline, etc.). Any editor that speaks MCP stdio gets the same gateway.</p>
1120
+ <p>VS Code can host an MCP-compatible agent such as Continue or Cline. Each editor or agent still requires its MCP stdio or hook configuration; this repo does not ship a standalone VS Code extension.</p>
1130
1121
  <div class="card-arrow">Open the setup guide →</div>
1131
1122
  </a>
1132
1123
  <a class="compat-card" href="https://mcp.so/server/thumbgate" target="_blank" rel="noopener" onclick="if(typeof posthog!=='undefined')posthog.capture('compat_mcp_so_click',{cta:'view_mcp_directory'})">
@@ -1136,7 +1127,7 @@ __GA_BOOTSTRAP__
1136
1127
  </a>
1137
1128
  <a class="compat-card" href="/go/gpt?utm_source=website&utm_medium=compatibility&utm_campaign=chatgpt_gpt&cta_id=compat_open_gpt&cta_placement=compatibility" target="_blank" rel="noopener">
1138
1129
  <h3>💬 ChatGPT GPT Actions</h3>
1139
- <p>Open the ThumbGate GPT to preflight risky commands, deploys, refunds, PR actions, and setup steps, capture thumbs-up/down lessons, and save typed signals. Real blocking for coding agents still runs locally after <code>npx thumbgate init</code>.</p>
1130
+ <p>Open the ThumbGate GPT to preflight risky commands, deploys, refunds, PR actions, and setup steps. Local allow, warn, or deny enforcement for coding agents requires <code>npx thumbgate init</code> plus the documented integration setup.</p>
1140
1131
  <div class="card-arrow">Open ThumbGate GPT →</div>
1141
1132
  </a>
1142
1133
  </div>
@@ -1155,24 +1146,24 @@ __GA_BOOTSTRAP__
1155
1146
  <a href="/dashboard" style="display:inline-block;margin-top:12px;color:var(--cyan);font-weight:600;text-decoration:underline;">Open Dashboard Demo →</a>
1156
1147
  </div>
1157
1148
  <div class="agent-card">
1158
- <h3>⛔ Check Reasoning Chains</h3>
1159
- <p>Every block explains why: which pattern matched, what evidence triggered it, and whether the rule came from your own corrections.</p>
1149
+ <h3>⛔ Check Decisions</h3>
1150
+ <p>Inspect the matched gate, allow/warn/deny decision, and reason returned by the local evaluator.</p>
1160
1151
  </div>
1161
1152
  <div class="agent-card">
1162
- <h3>📊 Org Dashboard</h3>
1163
- <p>See which agents are creating review churn, which checks are saving time, and where rollout risk is still concentrated across the shared workflow.</p>
1153
+ <h3>📊 Local Reports</h3>
1154
+ <p>Generate local dashboard and report views from the operator's available gate and feedback data. A hosted org dashboard is not generally available.</p>
1164
1155
  </div>
1165
1156
  <div class="agent-card">
1166
1157
  <h3>🧱 Isolated Execution Lanes</h3>
1167
- <p>High-risk local autonomy can route into Docker Sandboxes, while hosted team automations use a signed sandbox dispatch lane instead of running loose on a shared host.</p>
1158
+ <p>Workflow Sentinel can recommend Docker Sandboxes for high-risk local actions. The package includes a signed sandbox-dispatch mechanism, but each deployment must configure and verify its isolation boundary.</p>
1168
1159
  </div>
1169
1160
  <div class="agent-card">
1170
1161
  <h3>Data Processing Boundaries</h3>
1171
- <p>Local enforcement data stays in the operator's ThumbGate feedback directory by default. Hosted checkout, intake, newsletter, team sync, and product analytics are labeled as hosted processing surfaces instead of being blurred into the local runtime.</p>
1162
+ <p>Local enforcement data stays in the operator's ThumbGate feedback directory by default. Checkout, intake, newsletter, and product analytics are separate hosted processing surfaces. Hosted team lesson sync is not generally available.</p>
1172
1163
  </div>
1173
1164
  <div class="agent-card">
1174
1165
  <h3>🧪 Thompson Sampling</h3>
1175
- <p>Confidence tiers (none/low/medium/high) tell you when to trust the model vs fall back to rules. No guessing.</p>
1166
+ <p>Confidence tiers (none/low/medium/high) are available inputs to adaptive rule selection; they do not guarantee a correct decision.</p>
1176
1167
  </div>
1177
1168
  <div class="agent-card">
1178
1169
  <h3>🪞 History-Aware Lessons</h3>
@@ -1185,20 +1176,20 @@ __GA_BOOTSTRAP__
1185
1176
  <section class="compatibility" id="governance-not-logging">
1186
1177
  <div class="container">
1187
1178
  <div class="section-label">Governance, Not Logging</div>
1188
- <h2 class="section-title">Logs describe the damage. ThumbGate blocks the risky action before it runs.</h2>
1189
- <p style="color:var(--text-dim);max-width:820px;margin:0 auto 22px;">Self-governance is an operator writing local rules and keeping local logs. ThumbGate starts there, then turns each correction into a pre-action decision: allow, block, require evidence, or route for approval before the tool call touches code, data, money, or customers.</p>
1179
+ <h2 class="section-title">Logs describe the damage. ThumbGate evaluates the proposed action before it runs.</h2>
1180
+ <p style="color:var(--text-dim);max-width:820px;margin:0 auto 22px;">Self-governance is an operator writing local rules and keeping local logs. ThumbGate starts there, then evaluates configured checks as an allow, warn, or deny decision before the tool call touches code, data, money, or customers.</p>
1190
1181
  <div class="agent-grid">
1191
1182
  <div class="agent-card">
1192
1183
  <h3>Pre-action enforcement</h3>
1193
- <p>The rule is evaluated at the execution boundary, not after the fact. Repeated failures are stopped before shell commands, PR actions, deploys, refunds, or production writes run.</p>
1184
+ <p>The rule is evaluated at the execution boundary, not after the fact. Matching failures are evaluated before configured shell commands, PR actions, deploys, refunds, or production writes run. Detected secret exfiltration and gate kill/bypass commands deny by default; strict mode also denies matching warning-mode checks.</p>
1194
1185
  </div>
1195
1186
  <div class="agent-card">
1196
1187
  <h3>Reviewable decision trail</h3>
1197
- <p>Each event records the rule, source lesson, policy version, actor, action, evidence requirement, and reason so reviewers can inspect the decision instead of trusting an agent summary.</p>
1188
+ <p>Gate records expose the fields available for that evaluation, including its decision, matched gate, reason, and provided context, so reviewers can inspect local evidence instead of trusting an agent summary.</p>
1198
1189
  </div>
1199
1190
  <div class="agent-card">
1200
1191
  <h3>Enterprise governance mode</h3>
1201
- <p>Org-owned policies, reviewer approvals, signed evidence bundles, and export paths turn local corrections into shared controls without giving the agent unilateral authority over the rules.</p>
1192
+ <p>Enterprise is intake-first and scoped around one workflow's approval boundaries, rollback plan, evidence requirements, and rollout support. Hosted team sync, org dashboards, SSO, SIEM, and compliance packaging are not general-availability runtime features.</p>
1202
1193
  </div>
1203
1194
  </div>
1204
1195
  </div>
@@ -1216,7 +1207,7 @@ __GA_BOOTSTRAP__
1216
1207
  </div>
1217
1208
  <div class="agent-card">
1218
1209
  <h3>ThumbGate</h3>
1219
- <p>Turns operator feedback into Pre-Action Checks. It does not just remember the mistake. It blocks the repeat at the tool-call boundary across Claude Code, Cursor, Codex, Gemini, Amp, Cline, and OpenCode.</p>
1210
+ <p>Turns accepted operator feedback into local lessons and recurring failures into Pre-Action Checks. Supported agent integrations evaluate matching rules at the tool-call boundary. Detected secret exfiltration and gate kill/bypass commands deny by default; strict mode also denies matching warning-mode checks.</p>
1220
1211
  </div>
1221
1212
  <div class="agent-card">
1222
1213
  <h3>The stack that makes sense</h3>
@@ -1281,7 +1272,7 @@ __GA_BOOTSTRAP__
1281
1272
  <div class="autoresearch-grid">
1282
1273
  <div class="autoresearch-card">
1283
1274
  <h3>Guard the metric</h3>
1284
- <p>Require primary and holdout checks before an agent can call a variant better. Block cherry-picked runs and missing baselines.</p>
1275
+ <p>Require primary and holdout checks before an agent can call a variant better. Flag cherry-picked runs and missing baselines, then configure strict enforcement where a deny is required.</p>
1285
1276
  </div>
1286
1277
  <div class="autoresearch-card">
1287
1278
  <h3>Preserve proof trails</h3>
@@ -1304,19 +1295,19 @@ __GA_BOOTSTRAP__
1304
1295
  <div class="container">
1305
1296
  <div class="section-label">Persistent Agent Skills</div>
1306
1297
  <h2 class="section-title">Reusable instructions are the new baseline. Enforcement is the moat.</h2>
1307
- <p style="text-align:center;font-size:16px;color:var(--text-muted);max-width:880px;margin:0 auto 28px;line-height:1.7;">Grok-style skills are training users to expect persistent expertise across every surface. ThumbGate turns that expectation into a governed reliability layer: capture the correction once, export it as a portable skill or lesson bundle, then prove the next risky tool call was blocked before it ran.</p>
1298
+ <p style="text-align:center;font-size:16px;color:var(--text-muted);max-width:880px;margin:0 auto 28px;line-height:1.7;">Persistent agent skills create reusable instructions. ThumbGate adds a governed reliability layer: capture accepted feedback, export local lessons where the plan permits it, and inspect how a configured pre-action gate evaluated the next matching tool call before execution.</p>
1308
1299
  <div class="agent-grid">
1309
1300
  <div class="agent-card">
1310
1301
  <h3>Portable skill memory</h3>
1311
- <p>Thumbs-up/down lessons become reusable rules and skill-pack context that can move across Claude Code, Cursor, Codex, Gemini, Amp, Cline, OpenCode, and MCP-compatible agents.</p>
1302
+ <p>Accepted lessons can supply reusable rule and skill-pack context. Moving that context between supported agents requires an explicit operator-managed export/import or a shared local install scope.</p>
1312
1303
  </div>
1313
1304
  <div class="agent-card">
1314
1305
  <h3>Instructions plus teeth</h3>
1315
- <p>Persistent skills tell an agent what you prefer. ThumbGate checks whether the next action follows those preferences and blocks high-risk repeats before execution.</p>
1306
+ <p>Persistent skills tell an agent what you prefer. ThumbGate evaluates configured checks against the next proposed action and returns allow, warn, or deny before execution.</p>
1316
1307
  </div>
1317
1308
  <div class="agent-card">
1318
1309
  <h3>Proof for teams</h3>
1319
- <p>Every fired rule carries the source lesson, decision trace, and audit evidence, so teams can review which skill worked instead of trusting a hidden chatbot memory.</p>
1310
+ <p>Local gate results expose the matched rule and available decision context so operators can review what fired instead of relying only on hidden chatbot memory.</p>
1320
1311
  </div>
1321
1312
  </div>
1322
1313
  </div>
@@ -1326,13 +1317,13 @@ __GA_BOOTSTRAP__
1326
1317
  <section class="how-it-works" id="how-it-works">
1327
1318
  <div class="container">
1328
1319
  <div class="section-label">Self-improving enforcement</div>
1329
- <h2 class="section-title">Three steps to stop repeated AI failures</h2>
1330
- <p class="section-sub" style="max-width:720px;margin:6px auto 22px;text-align:center;color:var(--text-muted);font-size:clamp(16px,1.6vw,18px);">Self-improving — but for safety, not capability: every <code>👎</code> compiles into a hard rule, and each rule regression-tests itself against your history, so it blocks the repeat and never the safe action.</p>
1320
+ <h2 class="section-title">Three steps to catch repeated AI failures</h2>
1321
+ <p class="section-sub" style="max-width:720px;margin:6px auto 22px;text-align:center;color:var(--text-muted);font-size:clamp(16px,1.6vw,18px);">Self-improving — but for safety, not capability: human-in-the-loop accepted feedback becomes local lessons, recurring failures can become prevention rules, and regression tests help detect false-positive rule matches.</p>
1331
1322
  <div class="steps">
1332
1323
  <div class="step">
1333
1324
  <div class="step-num">1</div>
1334
1325
  <h3>Feedback</h3>
1335
- <p>Give <code>👍</code> or <code>👎</code> on your AI agent's actions. Feedback is stored in a SQLite+FTS5 lesson DB. In the current Claude auto-capture hook, a vague thumbs-down can distill from up to 8 prior recorded entries and the failed tool call before promotion, then stay linked to a 60-second feedback session. Example: you 👎 a risky migration → it auto-promotes to a "never run DROP on prod" check.</p>
1326
+ <p>Give <code>👍</code> or a concrete <code>👎</code> on your AI agent's actions. Accepted feedback is stored in a local SQLite+FTS5 lesson DB. In the current Claude auto-capture hook, a vague thumbs-down can distill from up to 8 prior recorded entries and the failed tool call before promotion, then stay linked to a 60-second feedback session. Recurring accepted failures can auto-promote into a prevention rule.</p>
1336
1327
  </div>
1337
1328
  <div class="step">
1338
1329
  <div class="step-num">2</div>
@@ -1342,7 +1333,7 @@ __GA_BOOTSTRAP__
1342
1333
  <div class="step">
1343
1334
  <div class="step-num">3</div>
1344
1335
  <h3>Checks</h3>
1345
- <p>Rules become Pre-Action Checks that <strong>block</strong> your agent before it repeats the same mistake. Your agent can't force-push, skip tests, or repeat a refactor you already rejected. No more fix-loops.</p>
1336
+ <p>Rules become Pre-Action Checks that evaluate proposed tool calls before execution. Detected secret exfiltration and gate kill/bypass commands deny by default; matching force-push, destructive-delete, fetch-and-run, or learned checks warn unless strict enforcement turns them into denies.</p>
1346
1337
  </div>
1347
1338
  </div>
1348
1339
  </div>
@@ -1353,23 +1344,23 @@ __GA_BOOTSTRAP__
1353
1344
  <section class="compatibility" id="guardrails">
1354
1345
  <div class="container">
1355
1346
  <div class="section-label">Enforcement</div>
1356
- <h2 class="section-title">Checks block. They don't ask nicely.</h2>
1347
+ <h2 class="section-title">Configured checks evaluate proposed tool calls before execution.</h2>
1357
1348
  <div class="agent-grid">
1358
1349
  <div class="agent-card">
1359
1350
  <h3>Don't trust — verify</h3>
1360
- <p>Every block shows why: pattern match, evidence, confidence score.</p>
1351
+ <p>Gate results report the decision, matched gate, and available reason or evidence context.</p>
1361
1352
  </div>
1362
1353
  <div class="agent-card">
1363
1354
  <h3>Real tools, not wishes</h3>
1364
- <p>Checks physically block tool calls. Not prompt tricks. Not "please don't."</p>
1355
+ <p>Configured checks run at the tool-call boundary. Detected secret exfiltration and gate kill/bypass commands deny by default; set <code>THUMBGATE_STRICT_ENFORCEMENT=1</code> to deny matching warning-mode checks.</p>
1365
1356
  </div>
1366
1357
  <div class="agent-card">
1367
1358
  <h3>Force models to show work</h3>
1368
- <p>Reasoning chains on every check decision. Thompson Sampling confidence tiers.</p>
1359
+ <p>Decision reasons and Thompson Sampling confidence tiers are available where the evaluator produces them.</p>
1369
1360
  </div>
1370
1361
  <div class="agent-card">
1371
- <h3>Log everything, learn automatically</h3>
1372
- <p>Repeated failures auto-promote to checks. Org dashboard shows all agents.</p>
1362
+ <h3>Review decisions and recurring failures</h3>
1363
+ <p>Recurring accepted failures can auto-promote to checks. Pro includes a personal local dashboard; a hosted org dashboard is not generally available.</p>
1373
1364
  </div>
1374
1365
  <div class="agent-card">
1375
1366
  <h3>Keep risky runs off the host</h3>
@@ -1394,12 +1385,12 @@ __GA_BOOTSTRAP__
1394
1385
  <span>terminal</span>
1395
1386
  </div>
1396
1387
  <div class="code-body">
1397
- <div><span class="comment"># Install in 30 seconds</span></div>
1388
+ <div><span class="comment"># Install the local CLI</span></div>
1398
1389
  <div><span class="fn">npx</span> thumbgate init</div>
1399
1390
  <div>&nbsp;</div>
1400
1391
  <div><span class="comment"># Your agent tries to delete production db...</span></div>
1401
- <div><span class="keyword">⛔ Check blocked:</span> <span class="string">"Never run DROP on production tables"</span></div>
1402
- <div><span class="comment"># Rule auto-generated from your previous 👎</span></div>
1392
+ <div><span class="keyword">⚠️ Check flagged:</span> <span class="string">"Never run DROP on production tables"</span> <span class="comment"># blocks under strict mode</span></div>
1393
+ <div><span class="comment"># Rule promoted from accepted recurring feedback</span></div>
1403
1394
  <div>&nbsp;</div>
1404
1395
  <div><span class="comment"># Works with your existing setup</span></div>
1405
1396
  <div><span class="fn">npx</span> thumbgate init <span class="comment"># bootstraps .thumbgate and .mcp.json</span></div>
@@ -1483,15 +1474,15 @@ __GA_BOOTSTRAP__
1483
1474
  </tr>
1484
1475
  </thead>
1485
1476
  <tbody>
1486
- <tr><td style="padding:10px 14px;border-bottom:1px solid var(--border);">Local PreToolUse enforcement (all agents)</td><td style="text-align:center;border-bottom:1px solid var(--border);">✅</td><td style="text-align:center;border-bottom:1px solid var(--border);">✅</td><td style="text-align:center;border-bottom:1px solid var(--border);">✅</td></tr>
1487
- <tr><td style="padding:10px 14px;border-bottom:1px solid var(--border);">Feedback captures</td><td style="text-align:center;border-bottom:1px solid var(--border);">2/day (10 total)</td><td style="text-align:center;border-bottom:1px solid var(--border);">Unlimited</td><td style="text-align:center;border-bottom:1px solid var(--border);">Unlimited</td></tr>
1488
- <tr><td style="padding:10px 14px;border-bottom:1px solid var(--border);">Active auto-promoted prevention rules</td><td style="text-align:center;border-bottom:1px solid var(--border);">3</td><td style="text-align:center;border-bottom:1px solid var(--border);">Unlimited</td><td style="text-align:center;border-bottom:1px solid var(--border);">Unlimited</td></tr>
1489
- <tr><td style="padding:10px 14px;border-bottom:1px solid var(--border);">Lesson recall + search across sessions</td><td style="text-align:center;border-bottom:1px solid var(--border);">—</td><td style="text-align:center;border-bottom:1px solid var(--border);">✅</td><td style="text-align:center;border-bottom:1px solid var(--border);">✅</td></tr>
1490
- <tr><td style="padding:10px 14px;border-bottom:1px solid var(--border);">Personal dashboard + DPO export</td><td style="text-align:center;border-bottom:1px solid var(--border);">—</td><td style="text-align:center;border-bottom:1px solid var(--border);">✅</td><td style="text-align:center;border-bottom:1px solid var(--border);">✅</td></tr>
1491
- <tr><td style="padding:10px 14px;border-bottom:1px solid var(--border);">Hosted sync across machines</td><td style="text-align:center;border-bottom:1px solid var(--border);">—</td><td style="text-align:center;border-bottom:1px solid var(--border);">✅</td><td style="text-align:center;border-bottom:1px solid var(--border);">✅</td></tr>
1492
- <tr><td style="padding:10px 14px;border-bottom:1px solid var(--border);">Shared lesson database + org dashboard</td><td style="text-align:center;border-bottom:1px solid var(--border);">—</td><td style="text-align:center;border-bottom:1px solid var(--border);">—</td><td style="text-align:center;border-bottom:1px solid var(--border);">✅</td></tr>
1493
- <tr><td style="padding:10px 14px;border-bottom:1px solid var(--border);">Org-wide shared enforcement + approval boundaries</td><td style="text-align:center;border-bottom:1px solid var(--border);">—</td><td style="text-align:center;border-bottom:1px solid var(--border);">—</td><td style="text-align:center;border-bottom:1px solid var(--border);">✅</td></tr>
1494
- <tr><td style="padding:10px 14px;border-bottom:1px solid var(--border);">Audit trail, SSO, regulatory gate templates</td><td style="text-align:center;border-bottom:1px solid var(--border);">—</td><td style="text-align:center;border-bottom:1px solid var(--border);">—</td><td style="text-align:center;border-bottom:1px solid var(--border);">✅</td></tr>
1477
+ <tr><td style="padding:10px 14px;border-bottom:1px solid var(--border);">Local PreToolUse enforcement (configured integrations)</td><td style="text-align:center;border-bottom:1px solid var(--border);">✅</td><td style="text-align:center;border-bottom:1px solid var(--border);">✅</td><td style="text-align:center;border-bottom:1px solid var(--border);">Scoped after intake</td></tr>
1478
+ <tr><td style="padding:10px 14px;border-bottom:1px solid var(--border);">Feedback captures</td><td style="text-align:center;border-bottom:1px solid var(--border);">2/day (10 total)</td><td style="text-align:center;border-bottom:1px solid var(--border);">Unlimited</td><td style="text-align:center;border-bottom:1px solid var(--border);">Scoped after intake</td></tr>
1479
+ <tr><td style="padding:10px 14px;border-bottom:1px solid var(--border);">Active auto-promoted prevention rules</td><td style="text-align:center;border-bottom:1px solid var(--border);">3</td><td style="text-align:center;border-bottom:1px solid var(--border);">Unlimited</td><td style="text-align:center;border-bottom:1px solid var(--border);">Scoped after intake</td></tr>
1480
+ <tr><td style="padding:10px 14px;border-bottom:1px solid var(--border);">Lesson recall + search across sessions</td><td style="text-align:center;border-bottom:1px solid var(--border);">—</td><td style="text-align:center;border-bottom:1px solid var(--border);">✅</td><td style="text-align:center;border-bottom:1px solid var(--border);">Scoped after intake</td></tr>
1481
+ <tr><td style="padding:10px 14px;border-bottom:1px solid var(--border);">Personal dashboard + DPO export</td><td style="text-align:center;border-bottom:1px solid var(--border);">—</td><td style="text-align:center;border-bottom:1px solid var(--border);">✅</td><td style="text-align:center;border-bottom:1px solid var(--border);">Scoped after intake</td></tr>
1482
+ <tr><td style="padding:10px 14px;border-bottom:1px solid var(--border);">Hosted team lesson sync</td><td style="text-align:center;border-bottom:1px solid var(--border);">—</td><td style="text-align:center;border-bottom:1px solid var(--border);">—</td><td style="text-align:center;border-bottom:1px solid var(--border);">Not GA</td></tr>
1483
+ <tr><td style="padding:10px 14px;border-bottom:1px solid var(--border);">Hosted org dashboard</td><td style="text-align:center;border-bottom:1px solid var(--border);">—</td><td style="text-align:center;border-bottom:1px solid var(--border);">—</td><td style="text-align:center;border-bottom:1px solid var(--border);">Not GA</td></tr>
1484
+ <tr><td style="padding:10px 14px;border-bottom:1px solid var(--border);">Approval boundaries + rollout design</td><td style="text-align:center;border-bottom:1px solid var(--border);">—</td><td style="text-align:center;border-bottom:1px solid var(--border);">—</td><td style="text-align:center;border-bottom:1px solid var(--border);">Scoped after intake</td></tr>
1485
+ <tr><td style="padding:10px 14px;border-bottom:1px solid var(--border);">SSO, SIEM + compliance packaging</td><td style="text-align:center;border-bottom:1px solid var(--border);">—</td><td style="text-align:center;border-bottom:1px solid var(--border);">—</td><td style="text-align:center;border-bottom:1px solid var(--border);">Not GA</td></tr>
1495
1486
  <tr><td style="padding:10px 14px;color:var(--text-muted);">Best for</td><td style="text-align:center;color:var(--text-muted);">One developer</td><td style="text-align:center;color:var(--text-muted);">Solo operators</td><td style="text-align:center;color:var(--text-muted);">Teams &amp; regulated orgs</td></tr>
1496
1487
  </tbody>
1497
1488
  </table>
@@ -1501,7 +1492,7 @@ __GA_BOOTSTRAP__
1501
1492
  <div class="price-card free-highlight" style="border-color:var(--cyan);box-shadow:0 0 40px var(--cyan-dim), inset 0 1px 0 rgba(34,211,238,0.15);position:relative;">
1502
1493
  <div class="tier" style="color:var(--cyan);">Free</div>
1503
1494
  <div class="price">$0</div>
1504
- <div class="price-sub">Block repeated mistakes daily. Forever free for solo devs.</div>
1495
+ <div class="price-sub">Catch repeated mistakes daily. Forever free for solo devs.</div>
1505
1496
  <p style="font-size:13px;color:#aaa;margin-bottom:16px;">2 captures/day, 3 active rules. Enough to see the value — upgrade when you need more.</p>
1506
1497
  <ul>
1507
1498
  <li><strong>2 feedback captures/day</strong> — 10 total on Free, then Pro for unlimited</li>
@@ -1509,7 +1500,7 @@ __GA_BOOTSTRAP__
1509
1500
  <li>No recall or lesson search</li>
1510
1501
  <li>No exports (DPO, Databricks, HuggingFace)</li>
1511
1502
  <li>All MCP integrations (Claude Code, Cursor, Codex, Gemini, Amp, any MCP agent)</li>
1512
- <li>PreToolUse hook blocking with built-in safety checks (force-push, destructive SQL, secrets)</li>
1503
+ <li>PreToolUse hook with built-in safety checks — hard-blocks secret exfiltration by default; warns on rm -rf, force-push, and destructive SQL (blocks them under <code>THUMBGATE_STRICT_ENFORCEMENT=1</code>)</li>
1513
1504
  <li><a href="/guide" style="color:var(--cyan);text-decoration:underline;">Setup guide for all agents →</a></li>
1514
1505
  </ul>
1515
1506
  <div class="hero-install" onclick="copyInstall(this)" title="Click to copy" style="margin-bottom:12px;width:100%;justify-content:center;">
@@ -1522,21 +1513,21 @@ __GA_BOOTSTRAP__
1522
1513
  <div class="price-card pro" data-price-dollars="19">
1523
1514
  <div class="tier">Pro</div>
1524
1515
  <div class="price">$19<span style="font-size:16px;color:var(--text-dim)">/mo</span></div>
1525
- <div class="price-sub"><strong>Don't buy a tool buy hosted sync + compatibility insurance.</strong> The free CLI runs your gates locally, but Pro is what we operate for you: secure SQLite sync across all your machines (saving you from managing database migrations manually across developer boxes) and active adapter maintenance to stay compatible with weekly breaking updates in Claude Code, Cursor, and Cline.</div>
1516
+ <div class="price-sub"><strong>Individual local governance with higher limits.</strong> The free CLI runs configured gates locally. Pro removes the individual caps and adds the personal dashboard, recall, search, and exports. Hosted team lesson sync is not generally available.</div>
1526
1517
  <ul>
1527
- <li><strong>Block every repeat mistake</strong> — unlimited feedback captures and prevention rules (Free caps at 3 active rules)</li>
1528
- <li><strong>Never re-explain a correction</strong> — lesson recall and search across sessions on every agent surface</li>
1529
- <li><strong>See exactly which rule fired</strong> — <a href="/dashboard#insights" style="color:var(--cyan);text-decoration:underline;">Visual check debugger</a> for every blocked action and the check that fired</li>
1530
- <li><strong>One install, every agent</strong> — Auto-connect so supported agents appear automatically after setup (Claude Code, Cursor, Codex, Gemini, Amp, Cline, OpenCode)</li>
1531
- <li><strong>Fine-tune your local model</strong> on what your team actually wants — <a href="/dashboard#export" style="color:var(--cyan);text-decoration:underline;">DPO training data export</a> with ready-to-use preference pairs for fine-tuning</li>
1532
- <li><strong>Audit-ready enforcement proof</strong> — Personal local dashboard for the individual operator with auditable block history</li>
1533
- <li><strong>Ship hardened agents to production</strong> — Model Hardening Advisor plus HuggingFace dataset export</li>
1534
- <li><strong>Hand a PR with proof</strong> — Review-ready workflow support and proof-ready lesson bundles a reviewer can verify in 30 seconds</li>
1518
+ <li><strong>Higher local limits</strong> — unlimited feedback captures and active auto-promoted prevention rules (Free caps at 3 active rules)</li>
1519
+ <li><strong>Recall and search accepted lessons</strong> across sessions in the configured local scope</li>
1520
+ <li><strong>Inspect which check fired</strong> — <a href="/dashboard#insights" style="color:var(--cyan);text-decoration:underline;">personal visual check debugger</a> for available local gate history</li>
1521
+ <li><strong>Use supported integrations</strong> — configure Claude Code, Cursor, Codex, Gemini, Amp, Cline, or OpenCode through its documented setup path</li>
1522
+ <li><strong>Export training data</strong> — <a href="/dashboard#export" style="color:var(--cyan);text-decoration:underline;">DPO preference-pair export</a> for a separate fine-tuning workflow</li>
1523
+ <li><strong>Review local enforcement evidence</strong> — personal dashboard for the individual operator with available gate history</li>
1524
+ <li><strong>Prepare model-hardening data</strong> — Model Hardening Advisor plus HuggingFace dataset export for a separate training and evaluation workflow</li>
1525
+ <li><strong>Hand a PR with proof</strong> — review-ready workflow support and exportable lesson bundles</li>
1535
1526
  <li><strong>Hand off without re-onboarding</strong> — Lesson export/import for handoff or migration</li>
1536
1527
  </ul>
1537
1528
  <div style="margin:12px 0 16px;padding:12px;border:1px solid rgba(34,211,238,0.25);border-radius:8px;background:rgba(34,211,238,0.06);">
1538
1529
  <div style="font-size:12px;color:var(--text-muted);margin-bottom:4px;">What your Pro dashboard looks like</div>
1539
- <div style="font-family:var(--mono);font-size:12px;color:var(--cyan);line-height:1.6;">checks: 36 active<br>feedback: unlimited<br>exports: DPO + lessons</div>
1530
+ <div style="font-family:var(--mono);font-size:12px;color:var(--cyan);line-height:1.6;">checks: local gate history<br>feedback: unlimited<br>exports: DPO + lessons</div>
1540
1531
  </div>
1541
1532
  <div style="font-size:11px;letter-spacing:0.08em;text-transform:uppercase;color:var(--cyan);font-weight:800;margin-bottom:8px;">PAY-NOW PRO</div>
1542
1533
  <a href="/checkout/pro?utm_source=pricing&utm_medium=cta&utm_campaign=v2_landing&utm_content=pricing_pro&cta_id=pricing_pro_checkout&cta_placement=pricing&plan_id=pro&landing_path=%2F" id="pro-checkout-link" class="btn-pro" data-revenue-cta data-cta-id="pricing_pro_checkout" data-cta-placement="pricing" data-tier="pro" data-plan-id="pro" data-price="19" onclick="handleProCheckout();return false;" style="display:block;width:100%;text-align:center;padding:12px;font-size:15px;">Upgrade to Pro — $19/mo</a>
@@ -1558,9 +1549,9 @@ __GA_BOOTSTRAP__
1558
1549
  <tbody>
1559
1550
  <tr>
1560
1551
  <td><strong>Best for</strong></td>
1561
- <td>Solo proof that a repeat mistake can be blocked</td>
1562
- <td>One operator who wants hosted sync, dashboard proof, and exports</td>
1563
- <td>Teams &amp; regulated orgs one person's correction protects every seat; banking, insurance, healthcare, public sector, audited workflows</td>
1552
+ <td>One developer evaluating local checks</td>
1553
+ <td>One operator who wants personal recall, dashboard proof, managed adapters, and exports</td>
1554
+ <td>Teams &amp; regulated organizations scoping one governed workflow</td>
1564
1555
  </tr>
1565
1556
  <tr>
1566
1557
  <td><strong>Price</strong></td>
@@ -1572,19 +1563,19 @@ __GA_BOOTSTRAP__
1572
1563
  <td><strong>Feedback captures</strong></td>
1573
1564
  <td>2/day, 10 total</td>
1574
1565
  <td>Unlimited</td>
1575
- <td>Unlimited, shared across the org; custom retention and evidence policy</td>
1566
+ <td>Scoped after intake; hosted team sync is not GA</td>
1576
1567
  </tr>
1577
1568
  <tr>
1578
1569
  <td><strong>Active prevention rules</strong></td>
1579
1570
  <td>3 active rules</td>
1580
1571
  <td>Unlimited personal rules</td>
1581
- <td>Shared org rules, policy templates, approvals, and audit export</td>
1572
+ <td>Approval boundaries and rollout requirements scoped after intake</td>
1582
1573
  </tr>
1583
1574
  <tr>
1584
1575
  <td><strong>Dashboard and proof</strong></td>
1585
1576
  <td>Local CLI evidence</td>
1586
1577
  <td>Personal dashboard, check debugger, DPO/HF exports</td>
1587
- <td>Org dashboard, hosted review views, rollout proof, SIEM-ready decision trail and compliance evidence</td>
1578
+ <td>Hosted org dashboard, SIEM, and compliance packaging are not GA</td>
1588
1579
  </tr>
1589
1580
  <tr>
1590
1581
  <td><strong>How to start</strong></td>
@@ -1595,35 +1586,27 @@ __GA_BOOTSTRAP__
1595
1586
  </tbody>
1596
1587
  </table>
1597
1588
  </div>
1598
- <p class="pricing-note">Free proves the enforcement loop. Pro removes solo limits. Enterprise plans start through intake because shared rules, permissions, rollback paths, and rollout proof must be explicit before checkout.</p>
1589
+ <p class="pricing-note">Free provides capped local evaluation. Pro removes individual limits and adds recall, search, a personal dashboard, and exports. Enterprise starts through intake to scope one workflow; it does not imply generally available hosted team features.</p>
1599
1590
  <div style="max-width:1080px;margin:24px auto 0;">
1600
1591
  <div class="price-card enterprise" style="border:1px solid var(--cyan);background:linear-gradient(180deg, rgba(34,211,238,0.04), transparent);padding:24px 28px;">
1601
1592
  <div style="display:flex;flex-wrap:wrap;align-items:flex-start;gap:24px;justify-content:space-between;">
1602
1593
  <div style="flex:1 1 420px;min-width:280px;">
1603
1594
  <div class="tier" style="color:var(--cyan);">Enterprise</div>
1604
1595
  <div style="font-size:14px;color:var(--text-muted);margin:4px 0 12px;letter-spacing:0.04em;text-transform:uppercase;">Engineering teams · Banking · Insurance · Healthcare · Public sector</div>
1605
- <div style="font-size:18px;color:var(--text);margin-bottom:6px;font-weight:700;">Shared enforcement for teams &amp; regulated workflows — custom pricing</div>
1606
- <div class="price-sub" style="margin-bottom:14px;">For teams that need one correction to protect every developer and agent across shared repos, CI, and approval policies including teams operating under DORA, the EU AI Act, HIPAA, or comparable audit pressure. Pricing is scoped after intake because the buyer needs evidence, deployment boundaries, and approval ownership before checkout.</div>
1596
+ <div style="font-size:18px;color:var(--text);margin-bottom:6px;font-weight:700;">Scope one governed workflow — custom pricing after intake</div>
1597
+ <div class="price-sub" style="margin-bottom:14px;">Enterprise is an intake-led service path for teams that need to define approval boundaries, rollback plans, evidence requirements, and rollout ownership around one workflow. The current public runtime remains local per configured operator; hosted team lesson sync and a hosted org dashboard are not generally available.</div>
1607
1598
  <ul style="margin-bottom:0;">
1608
- <li><strong>Shared lesson database</strong> — one hosted, shared lesson DB so one team member's correction becomes every developer's prevention rule across the org</li>
1609
- <li><strong>Org dashboard</strong> — active agents, check hit-rates, and risk surfaces across the whole team</li>
1610
- <li><strong>Shared enforcement memory</strong> — approval boundaries and rollback safety applied org-wide, not per machine</li>
1611
- <li><strong>Audit-grade decision trail</strong> — every PreToolUse evaluation logged with the rule that fired, ready for SIEM export</li>
1612
- <li><strong>Immutable rule provenance</strong> — each prevention rule traceable to the feedback event that generated it</li>
1613
- <li><strong>Self-managed deployment</strong> — air-gapped or VPC-hosted; no agent state leaves your boundary</li>
1614
- <li><strong>Dialogflow CX fulfillment guard</strong> — ThumbGate's pre-action gate sits in front of your Dialogflow CX webhook fulfillment, in your own GCP tenant, so risky or repeat turns are blocked before they touch a database, CRM, or billing system (white-glove design-partner pilot)</li>
1615
- <li><strong>Vertex AI / Gemini scoring, in-tenant</strong> — risk and planning scoring runs on Gemini via Vertex (<code>npx thumbgate setup-vertex</code>); no conversational data leaves your VPC</li>
1616
- <li><strong>DORA / EU AI Act evidence packaging</strong> — machine-readable reports aligned to Article 6, 28, and high-risk provider monitoring obligations</li>
1617
- <li><strong>SSO + role separation</strong> — operator, reviewer, and auditor roles enforced at the gate layer</li>
1618
- <li><strong>Enterprise Data Chat</strong> — local ThumbGate data Q&amp;A with Dialogflow CX / Vertex-ready governance; live cloud-agent claims require deployment evidence first</li>
1619
- <li><strong>Workflow proof plan included</strong> — a scoped review that proves the boundary against one of your real repeated-failure cases before broader rollout</li>
1620
- <li><strong>Quarterly red-team review</strong> — prompt-injection and policy-bypass exercises with written findings</li>
1599
+ <li><strong>One-workflow discovery</strong> — identify the repeated failure, runtime, owner, and decision boundary</li>
1600
+ <li><strong>Approval and rollback design</strong> — document who can approve, what evidence is required, and how the workflow recovers</li>
1601
+ <li><strong>Verification plan</strong> — define the local tests and proof required before a wider rollout claim</li>
1602
+ <li><strong>Deployment requirements</strong> — capture data-boundary, identity, hosting, and integration constraints before making delivery commitments</li>
1603
+ <li><strong>Current availability boundary</strong> — hosted team sync, a hosted org dashboard, SSO, SIEM, and compliance packaging are not general-availability features</li>
1621
1604
  </ul>
1622
1605
  </div>
1623
1606
  <div style="flex:0 0 260px;min-width:240px;display:flex;flex-direction:column;gap:10px;">
1624
1607
  <a href="/?tier=enterprise#workflow-sprint-intake" onclick="try{posthog.capture('enterprise_intake_click',{cta:'enterprise_contact_sales',placement:'pricing'})}catch(_){};sendFirstPartyTelemetry('enterprise_intake_started',{ctaId:'pricing_enterprise_intake',ctaPlacement:'pricing',planId:'enterprise'});" class="btn-team" style="display:block;text-align:center;background:var(--cyan);color:#06121a;font-weight:800;">Start enterprise intake →</a>
1625
1608
  <a href="/learn/regulated-agent-execution-boundary" style="display:block;text-align:center;padding:10px 14px;font-size:13px;color:var(--cyan);border:1px solid var(--cyan);border-radius:8px;text-decoration:none;">Read the build-vs-buy thesis first</a>
1626
- <p style="font-size:11px;color:var(--text-muted);margin:0;text-align:center;line-height:1.5;">Pricing is workflow-scoped and shared after the intake call. Annual pre-pay available.</p>
1609
+ <p style="font-size:11px;color:var(--text-muted);margin:0;text-align:center;line-height:1.5;">Pricing and deliverables are scoped after intake; no hosted-team capability is promised before verification.</p>
1627
1610
  </div>
1628
1611
  </div>
1629
1612
  </div>
@@ -1635,14 +1618,14 @@ __GA_BOOTSTRAP__
1635
1618
  <div class="container">
1636
1619
  <div class="section-label">Enterprise Pilot</div>
1637
1620
  <h2 class="section-title">Start the AI Agent Governance Sprint with one repeat failure</h2>
1638
- <p style="color:var(--text-dim);max-width:720px;margin:0 auto 16px;">This is the fastest path to first paid value for teams. Start with one repo, one workflow owner, and one blocker. The intake is designed to prove that ThumbGate reduces review churn, rollout risk, or repeated agent mistakes before a wider rollout.</p>
1621
+ <p style="color:var(--text-dim);max-width:760px;margin:0 auto 16px;">Start with one repo, one workflow owner, and one repeated failure. The intake scopes the evidence needed to determine whether ThumbGate fits that action boundary before any wider rollout claim.</p>
1639
1622
  <div class="team-intake-panel">
1640
1623
  <div class="team-intake-panel-head">
1641
1624
  <div>
1642
1625
  <h3>Tell us the workflow. Get a proof plan.</h3>
1643
- <p>The highest-fit Enterprise buyer is already feeling one repeated failure. Send the workflow first so the next step is scoped around the real blocker instead of a blind checkout.</p>
1626
+ <p>The highest-fit Enterprise buyer is already feeling one repeated failure in a workflow where mistakes have real consequences. Send the workflow first so the next step is scoped around the real blocker instead of a blind checkout.</p>
1644
1627
  </div>
1645
- <span class="team-intake-badge">30-minute intake</span>
1628
+ <span class="team-intake-badge">Scope-first intake</span>
1646
1629
  </div>
1647
1630
  <div class="team-intake-recovery" aria-label="Checkout recovery path for workflow sprint buyers">
1648
1631
  <div>
@@ -1682,35 +1665,35 @@ __GA_BOOTSTRAP__
1682
1665
  <div class="faq-list">
1683
1666
  <div class="faq-item open">
1684
1667
  <div class="faq-q" role="button" tabindex="0" aria-expanded="true" onclick="toggleFaq(this)" onkeydown="handleFaqKeydown(event)">Does ThumbGate support model fine-tuning?</div>
1685
- <div class="faq-a">Yes. ThumbGate Pro includes a Model Hardening Advisor and LoRA JSONL export. Pro users can export their episodic memory as DPO (Direct Preference Optimization) pairs to fine-tune local models (like Llama 3 or Mistral) so they natively avoid repeating known mistakes.</div>
1668
+ <div class="faq-a">ThumbGate Pro includes a Model Hardening Advisor plus LoRA JSONL and DPO preference-pair exports for use in a separate fine-tuning workflow. An export does not guarantee that a trained model will avoid a mistake; that outcome depends on the dataset, training process, model, and evaluation.</div>
1686
1669
  </div>
1687
1670
  <div class="faq-item">
1688
1671
  <div class="faq-q" role="button" tabindex="0" aria-expanded="false" onclick="toggleFaq(this)" onkeydown="handleFaqKeydown(event)">How is ThumbGate different from model-training feedback loops?</div>
1689
- <div class="faq-a">ThumbGate's intelligence is context, not weights. It doesn't touch the model it injects past feedback into context so your agent is conditioned by your corrections. Think of it as a behavioral immune system, not a training pipeline. The check blocks are hard enforcement, not soft suggestions.</div>
1672
+ <div class="faq-a">ThumbGate's runtime keeps lessons and rules outside the model. A configured hook evaluates proposed tool calls before execution. Detected secret exfiltration plus commands that kill the gate process or enable its bypass variable deny by default; matching destructive deletes, force-pushes, and fetch-and-run commands warn by default. Strict mode (<code>THUMBGATE_STRICT_ENFORCEMENT=1</code>) turns matching warning-mode checks into denies.</div>
1690
1673
  </div>
1691
1674
  <div class="faq-item">
1692
1675
  <div class="faq-q" role="button" tabindex="0" aria-expanded="false" onclick="toggleFaq(this)" onkeydown="handleFaqKeydown(event)">How is ThumbGate different from persistent agent skills?</div>
1693
- <div class="faq-a">Persistent agent skills are reusable instructions. ThumbGate uses the same market shift but adds the missing enforcement loop: lessons become portable skill context, Pre-Action Checks block repeated failures before tool execution, and the dashboard shows evidence for which rule fired and why.</div>
1676
+ <div class="faq-a">Persistent agent skills are reusable instructions. ThumbGate adds a local enforcement loop: accepted feedback becomes lessons, recurring failures can become rules, and configured Pre-Action Checks return allow, warn, or deny before tool execution. Pro adds a personal dashboard and operator-managed exports; hosted team sync and a hosted org dashboard are not generally available.</div>
1694
1677
  </div>
1695
1678
  <div class="faq-item">
1696
1679
  <div class="faq-q" role="button" tabindex="0" aria-expanded="false" onclick="toggleFaq(this)" onkeydown="handleFaqKeydown(event)">What's the tech stack?</div>
1697
- <div class="faq-a">SQLite+FTS5 lesson DB for fast full-text search. MemAlign-inspired dual recall (principle-based rules + episodic context). Thompson Sampling for adaptive check sensitivity per failure domain. LanceDB + Apache Arrow for local vector search with Hugging Face embeddings. ContextFS for context assembly. Bayesian belief updates on each memory. PreToolUse hook enforcement blocks known-bad actions before execution. All local-first no cloud required.</div>
1680
+ <div class="faq-a">SQLite+FTS5 lesson DB for fast full-text search. MemAlign-inspired dual recall (principle-based rules + episodic context). Thompson Sampling for adaptive check sensitivity per failure domain. LanceDB + Apache Arrow for local vector search with Hugging Face embeddings. ContextFS for context assembly. Bayesian belief updates on each memory. Configured PreToolUse hooks evaluate known-bad actions before execution; detected secret exfiltration and gate kill/bypass commands deny by default, while strict mode also denies matching warning-mode checks. The local path requires no cloud account.</div>
1698
1681
  </div>
1699
1682
  <div class="faq-item">
1700
1683
  <div class="faq-q" role="button" tabindex="0" aria-expanded="false" onclick="toggleFaq(this)" onkeydown="handleFaqKeydown(event)">What AI agents and editors does this work with?</div>
1701
- <div class="faq-a">ThumbGate works with Claude Code, Cursor, Codex, Gemini CLI, Amp, Cline, OpenCode, and any other MCP-compatible agent. The Cursor plugin bundle ships in this repo and installs today via <code>npx thumbgate init --agent cursor</code>; the Cursor Marketplace listing was submitted 2026-05-19 and is still pending Cursor's manual review, so it is not yet discoverable from the in-app Marketplace. Codex now ships both a standalone plugin bundle and a repo-local app plugin profile, and the published download is linked directly from this page. VS Code works when you run an MCP-compatible agent inside it, but this repo does not ship a standalone VS Code extension today.</div>
1684
+ <div class="faq-a">ThumbGate includes documented integration paths for Claude Code, Cursor, Codex, Gemini CLI, Amp, Cline, and OpenCode. Each agent must be configured through its hook or MCP setup; MCP compatibility alone does not install enforcement automatically. The Cursor runtime setup is <code>npx thumbgate init --agent cursor</code>, while the in-app Marketplace listing remains separate. VS Code can host an MCP-compatible agent, but this repo does not ship a standalone VS Code extension.</div>
1702
1685
  </div>
1703
1686
  <div class="faq-item">
1704
1687
  <div class="faq-q" role="button" tabindex="0" aria-expanded="false" onclick="toggleFaq(this)" onkeydown="handleFaqKeydown(event)">Do I have to chat inside the ThumbGate GPT for enforcement?</div>
1705
- <div class="faq-a">No. The ThumbGate GPT is the ChatGPT entrypoint for checking proposed actions, capturing thumbs-up/down lessons, and getting setup help. Use it for advice and checkpointing; hard enforcement still runs locally where the agent executes after <code>npx thumbgate init</code>.</div>
1688
+ <div class="faq-a">No. The ThumbGate GPT is a ChatGPT entrypoint for checking proposed actions and getting setup help. Local allow, warn, or deny enforcement runs where the coding agent executes and requires <code>npx thumbgate init</code> plus the documented integration setup.</div>
1706
1689
  </div>
1707
1690
  <div class="faq-item">
1708
1691
  <div class="faq-q" role="button" tabindex="0" aria-expanded="false" onclick="toggleFaq(this)" onkeydown="handleFaqKeydown(event)">When should I use Pro versus the Workflow Hardening Sprint?</div>
1709
- <div class="faq-a">Start with the <a href="/guide" style="color:var(--cyan);text-decoration:underline;">setup guide</a> if you only need the local path. Choose Pro after one real blocked repeat when you want your own dashboard, DPO export, and proof-ready exports. Choose the <a href="#workflow-sprint-intake" style="color:var(--cyan);text-decoration:underline;">Workflow Hardening Sprint</a> when one workflow owner needs approval boundaries, rollback safety, and rollout proof before wider rollout.</div>
1692
+ <div class="faq-a">Start with the <a href="/guide" style="color:var(--cyan);text-decoration:underline;">setup guide</a> if you only need the local path. Choose Pro when an individual operator wants higher limits, personal recall, a local dashboard, DPO export, and operator-managed lesson bundles. Choose the <a href="#workflow-sprint-intake" style="color:var(--cyan);text-decoration:underline;">Workflow Hardening Sprint</a> when one workflow owner needs to scope approval boundaries, rollback safety, and evidence requirements before a wider rollout claim.</div>
1710
1693
  </div>
1711
1694
  <div class="faq-item">
1712
1695
  <button class="faq-q" type="button" aria-expanded="false" onclick="toggleFaq(this)" onkeydown="handleFaqKeydown(event)">How do we keep high-risk autonomous runs off the host?</button>
1713
- <div class="faq-a">ThumbGate is the control plane, not just a prompt layer. Workflow Sentinel predicts blast radius before execution, and risky local autonomy can be routed into Docker Sandboxes instead of running directly on the host. Enterprise workflows also have a signed hosted sandbox lane for isolated dispatch when local repo access is not required.</div>
1696
+ <div class="faq-a">ThumbGate combines pre-action checks with execution guidance. Workflow Sentinel can recommend Docker Sandboxes for risky local actions. The package also contains a signed sandbox-dispatch mechanism, but each deployment must configure and verify that isolation boundary; it is not hosted team lesson sync or a generally available hosted org service.</div>
1714
1697
  </div>
1715
1698
  <div class="faq-item">
1716
1699
  <div class="faq-q" role="button" tabindex="0" aria-expanded="false" onclick="toggleFaq(this)" onkeydown="handleFaqKeydown(event)">How do we trust a new package release?</div>
@@ -1718,7 +1701,7 @@ __GA_BOOTSTRAP__
1718
1701
  </div>
1719
1702
  <div class="faq-item">
1720
1703
  <div class="faq-q" role="button" tabindex="0" aria-expanded="false" onclick="toggleFaq(this)" onkeydown="handleFaqKeydown(event)">Do I need a cloud account?</div>
1721
- <div class="faq-a">No. Free keeps local enforcement on your machine with 2 feedback captures/day, up to 3 active auto-promoted prevention rules, built-in safety checks, and hook blocking. Recall, lesson search, unlimited rules, unlimited captures, and exports open up on Pro. No cloud account is required. The business starts when a team wants shared rules, approval boundaries, hosted review views, org dashboard visibility, and proof that survives handoffs. Pro is the optional solo side lane for a personal dashboard, DPO export, and team lesson export/import share lessons across projects so one team's mistakes become every team's prevention rules.</div>
1704
+ <div class="faq-a">No. Free keeps local enforcement on your machine with 2 feedback captures/day, up to 3 active auto-promoted prevention rules, and built-in checks. Recall, lesson search, unlimited rules and captures, a personal dashboard, and operator-managed exports open up on Pro. Enterprise is custom and scoped after intake around one workflow. Hosted team lesson sync and a hosted org dashboard are not general-availability runtime features.</div>
1722
1705
  </div>
1723
1706
  <div class="faq-item">
1724
1707
  <div class="faq-q" role="button" tabindex="0" aria-expanded="false" onclick="toggleFaq(this)" onkeydown="handleFaqKeydown(event)">What if my thumbs-down is vague?</div>
@@ -1726,23 +1709,23 @@ __GA_BOOTSTRAP__
1726
1709
  </div>
1727
1710
  <div class="faq-item">
1728
1711
  <div class="faq-q" role="button" tabindex="0" aria-expanded="false" onclick="toggleFaq(this)" onkeydown="handleFaqKeydown(event)">How are pre-action checks different from prompt rules?</div>
1729
- <div class="faq-a">Prompt rules are a starting point, not a finish line. Without prompt evaluation you do not know whether they still hold up under real tool use. ThumbGate adds the human-in-the-loop measurement loop and the enforcement layer: proof lanes, ThumbGate Bench, and self-heal checks show whether behavior improved, and Pre-Action Checks block the action before execution when it did not.</div>
1712
+ <div class="faq-a">Prompt rules are a starting point, not a finish line. ThumbGate adds a human-feedback loop plus configured Pre-Action Checks at the tool-call boundary. The default policy denies detected secret exfiltration and gate kill/bypass commands while other matching high-risk checks warn; strict mode also denies matching warning-mode checks.</div>
1730
1713
  </div>
1731
1714
  <div class="faq-item">
1732
1715
  <div class="faq-q" role="button" tabindex="0" aria-expanded="false" onclick="toggleFaq(this)" onkeydown="handleFaqKeydown(event)">How does ThumbGate fit the agentic development cycle?</div>
1733
- <div class="faq-a">Agentic development is not just generation. Teams need Guide, Generate, Verify, and Solve working as a repeatable loop. ThumbGate is the pre-action execution gate in that loop: guidance and feedback become rules, generated tool calls are checked before execution, verification evidence is required for risky actions, and solved failures become reusable prevention gates.</div>
1716
+ <div class="faq-a">Agentic development is not just generation. Teams need Guide, Generate, Verify, and Solve working as a repeatable loop. ThumbGate can serve as the pre-action execution gate: guidance and accepted feedback can become rules, generated tool calls are evaluated before execution, rules can require verification evidence, and recurring solved failures can become reusable prevention gates.</div>
1734
1717
  </div>
1735
1718
  <div class="faq-item">
1736
1719
  <div class="faq-q" role="button" tabindex="0" aria-expanded="false" onclick="toggleFaq(this)" onkeydown="handleFaqKeydown(event)">What does Pro cost?</div>
1737
- <div class="faq-a">Pro is $19/mo or $149/yr for individual operators and bills immediately through Stripe. Enterprise is custom pricing, scoped after intake, and starts through the workflow intake so scope, shared rules, and rollout proof are explicit before a rollout.</div>
1720
+ <div class="faq-a">Pro is $19/mo or $149/yr for individual operators and bills through Stripe. Enterprise is custom pricing, scoped after intake around one workflow's approval boundaries, rollback plan, evidence requirements, and rollout support. Hosted team features are not implied by intake.</div>
1738
1721
  </div>
1739
1722
  <div class="faq-item">
1740
1723
  <div class="faq-q" role="button" tabindex="0" aria-expanded="false" onclick="toggleFaq(this)" onkeydown="handleFaqKeydown(event)">Does ThumbGate support enterprise Google Cloud / Vertex AI?</div>
1741
- <div class="faq-a">Yes. <code>npx thumbgate setup-vertex</code> detects your active gcloud session, enables the Vertex AI API on your Google Cloud project, and configures secure Application Default Credentials (ADC) so evaluations run within your corporate VPC. For Dialogflow CX, the Enterprise pilot puts ThumbGate's pre-action gate in front of your DFCX webhook fulfillment (deployed in your own tenant) so risky or repeat turns are blocked before they touch a database, CRM, or billing system. It's a white-glove design-partner pilot — ThumbGate gates your own Dialogflow CX agent; it does not host a Dialogflow CX agent for you.</div>
1724
+ <div class="faq-a">The package ships a <code>npx thumbgate setup-vertex</code> setup helper for operators who choose the optional Vertex adapter. Whether evaluations stay within a particular VPC depends on the operator's Google Cloud configuration and must be verified in that deployment. Dialogflow CX governance is an intake-scoped integration requirement, not a generally available hosted deployment claim.</div>
1742
1725
  </div>
1743
1726
  <div class="faq-item">
1744
1727
  <div class="faq-q" role="button" tabindex="0" aria-expanded="false" onclick="toggleFaq(this)" onkeydown="handleFaqKeydown(event)">How does ThumbGate contain enterprise API costs?</div>
1745
- <div class="faq-a">ThumbGate prevents runaway API costs through a local client-side token ledger (FrontierBudget) that enforces strict cost-containment limits (such as keeping monthly costs under $10/mo). Because GCP billing console alerts are delayed, our local circuit breaker halts runaway agent loops in milliseconds to guarantee budget protection.</div>
1728
+ <div class="faq-a">FrontierBudget provides a local client-side token ledger and configurable routing or cost-containment limits. Reported token savings are estimates based on configured assumptions, not provider-billing measurements or a spend guarantee; verify actual costs in the provider's billing telemetry.</div>
1746
1729
  </div>
1747
1730
  </div>
1748
1731
  </div>
@@ -1766,7 +1749,7 @@ __GA_BOOTSTRAP__
1766
1749
  <section class="final-cta">
1767
1750
  <div class="container">
1768
1751
  <h2>Stop the same mistake before it runs again.</h2>
1769
- <p>Install free. No credit card. No signup. Hit your first check in 60 seconds.</p>
1752
+ <p>Install the local CLI without a credit card or account, then configure the integration for your agent.</p>
1770
1753
  <div style="display:flex;gap:12px;justify-content:center;flex-wrap:wrap;align-items:center;">
1771
1754
  <div class="hero-install" onclick="copyInstall(this)" title="Click to copy" style="margin-bottom:0;font-size:16px;padding:14px 24px;border:2px solid var(--cyan);">
1772
1755
  <span class="prompt">$</span>
@@ -1790,17 +1773,16 @@ __GA_BOOTSTRAP__
1790
1773
  <a href="https://github.com/IgorGanapolsky/ThumbGate" target="_blank" rel="noopener">GitHub</a>
1791
1774
  <a href="https://www.npmjs.com/package/thumbgate" target="_blank" rel="noopener">npm</a>
1792
1775
  <a href="https://www.producthunt.com/products/thumbgate" target="_blank" rel="noopener">Product Hunt</a>
1793
- <a href="https://x.com/IgorGanapolsky" target="_blank" rel="noopener">X / Twitter</a>
1794
1776
  <a href="https://www.linkedin.com/in/igorganapolsky" target="_blank" rel="noopener">LinkedIn</a>
1795
1777
  <a href="/blog">Blog</a>
1796
1778
  </div>
1797
- <span class="footer-copy">© 2026 ThumbGate · MIT License · npm v1.27.20</span>
1779
+ <span class="footer-copy">© 2026 ThumbGate · MIT License · npm v1.28.1</span>
1798
1780
  </div>
1799
1781
  </footer>
1800
1782
 
1801
1783
  <!-- STICKY BOTTOM CTA -->
1802
1784
  <div class="sticky-cta" id="sticky-cta">
1803
- <span class="sticky-cta-text"><strong>Pro unlocks recall, sync, exports</strong> — free CLI is capped at 2 captures/day</span>
1785
+ <span class="sticky-cta-text"><strong>Pro unlocks recall, proof, exports</strong> — free CLI is capped at 2 captures/day</span>
1804
1786
  <div class="hero-install" onclick="copyInstall(this)" title="Click to copy" style="margin-bottom:0;padding:8px 16px;font-size:13px;">
1805
1787
  <span class="prompt">$</span>
1806
1788
  <span class="cmd">npx thumbgate init</span>