thumbgate 1.3.0 → 1.4.0
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.
- package/.claude-plugin/marketplace.json +32 -13
- package/.claude-plugin/plugin.json +15 -2
- package/.well-known/llms.txt +60 -0
- package/.well-known/mcp/server-card.json +1 -1
- package/README.md +109 -20
- package/adapters/README.md +1 -1
- package/adapters/chatgpt/openapi.yaml +168 -0
- package/adapters/claude/.mcp.json +2 -2
- package/adapters/codex/config.toml +2 -2
- package/adapters/mcp/server-stdio.js +84 -1
- package/adapters/opencode/opencode.json +1 -1
- package/bin/cli.js +200 -13
- package/bin/postinstall.js +8 -2
- package/config/budget.json +18 -0
- package/config/gates/code-edit.json +61 -0
- package/config/gates/db-write.json +61 -0
- package/config/gates/default.json +154 -3
- package/config/gates/deploy.json +61 -0
- package/config/github-about.json +2 -1
- package/config/merge-quality-checks.json +23 -0
- package/openapi/openapi.yaml +168 -0
- package/package.json +42 -10
- package/plugins/claude-codex-bridge/.claude-plugin/plugin.json +1 -1
- package/plugins/claude-codex-bridge/.mcp.json +1 -1
- package/plugins/claude-codex-bridge/scripts/codex-bridge.js +1 -3
- package/plugins/codex-profile/.codex-plugin/plugin.json +1 -1
- package/plugins/codex-profile/.mcp.json +1 -1
- package/plugins/codex-profile/INSTALL.md +27 -4
- package/plugins/codex-profile/README.md +33 -9
- package/plugins/cursor-marketplace/.cursor-plugin/plugin.json +1 -1
- package/plugins/opencode-profile/INSTALL.md +1 -1
- package/public/blog.html +73 -0
- package/public/compare/mem0.html +189 -0
- package/public/compare/speclock.html +180 -0
- package/public/compare.html +10 -2
- package/public/guide.html +2 -2
- package/public/guides/claude-code-prevent-repeated-mistakes.html +161 -0
- package/public/guides/codex-cli-guardrails.html +158 -0
- package/public/guides/cursor-prevent-repeated-mistakes.html +161 -0
- package/public/guides/pre-action-gates.html +162 -0
- package/public/guides/stop-repeated-ai-agent-mistakes.html +159 -0
- package/public/index.html +136 -50
- package/public/lessons.html +33 -24
- package/public/llm-context.md +140 -0
- package/public/pro.html +24 -22
- package/scripts/__pycache__/train_from_feedback.cpython-312.pyc +0 -0
- package/scripts/access-anomaly-detector.js +1 -1
- package/scripts/adk-consolidator.js +1 -5
- package/scripts/agent-security-hardening.js +4 -6
- package/scripts/agentic-data-pipeline.js +1 -3
- package/scripts/async-job-runner.js +1 -5
- package/scripts/audit-trail.js +1 -5
- package/scripts/background-agent-governance.js +2 -10
- package/scripts/billing.js +2 -16
- package/scripts/budget-enforcer.js +173 -0
- package/scripts/build-codex-plugin.js +152 -0
- package/scripts/check-congruence.js +132 -14
- package/scripts/commercial-offer.js +5 -7
- package/scripts/content-engine/linkedin-content-generator.js +154 -0
- package/scripts/content-engine/output/linkedin-memento-validation.md +17 -0
- package/scripts/content-engine/output/linkedin-posts-2026-04-09.md +175 -0
- package/scripts/content-engine/reddit-thread-finder.js +154 -0
- package/scripts/context-engine.js +21 -6
- package/scripts/contextfs.js +1 -21
- package/scripts/dashboard.js +20 -0
- package/scripts/decision-journal.js +341 -0
- package/scripts/delegation-runtime.js +1 -5
- package/scripts/distribution-surfaces.js +26 -0
- package/scripts/document-intake.js +927 -0
- package/scripts/ephemeral-agent-store.js +1 -8
- package/scripts/evolution-state.js +1 -5
- package/scripts/experiment-tracker.js +1 -5
- package/scripts/export-databricks-bundle.js +1 -5
- package/scripts/export-hf-dataset.js +1 -5
- package/scripts/export-training.js +1 -5
- package/scripts/feedback-attribution.js +1 -16
- package/scripts/feedback-history-distiller.js +1 -16
- package/scripts/feedback-loop.js +1 -5
- package/scripts/feedback-root-consolidator.js +2 -21
- package/scripts/feedback-session.js +49 -0
- package/scripts/feedback-to-rules.js +188 -28
- package/scripts/filesystem-search.js +1 -9
- package/scripts/fs-utils.js +104 -0
- package/scripts/gates-engine.js +149 -4
- package/scripts/github-about.js +32 -8
- package/scripts/gtm-revenue-loop.js +1 -5
- package/scripts/harness-selector.js +148 -0
- package/scripts/hosted-job-launcher.js +1 -5
- package/scripts/hybrid-feedback-context.js +7 -33
- package/scripts/intervention-policy.js +58 -1
- package/scripts/lesson-db.js +3 -18
- package/scripts/lesson-inference.js +194 -16
- package/scripts/lesson-retrieval.js +60 -24
- package/scripts/llm-client.js +59 -0
- package/scripts/managed-lesson-agent.js +183 -0
- package/scripts/marketing-experiment.js +8 -22
- package/scripts/meta-agent-loop.js +624 -0
- package/scripts/metered-billing.js +1 -1
- package/scripts/money-watcher.js +1 -4
- package/scripts/obsidian-export.js +1 -5
- package/scripts/operational-integrity.js +15 -3
- package/scripts/org-dashboard.js +6 -1
- package/scripts/per-step-scoring.js +2 -4
- package/scripts/pr-manager.js +201 -19
- package/scripts/pro-features.js +3 -2
- package/scripts/prompt-dlp.js +3 -3
- package/scripts/prove-adapters.js +1 -5
- package/scripts/prove-attribution.js +1 -5
- package/scripts/prove-automation.js +1 -3
- package/scripts/prove-cloudflare-sandbox.js +1 -3
- package/scripts/prove-data-pipeline.js +1 -3
- package/scripts/prove-intelligence.js +1 -3
- package/scripts/prove-lancedb.js +1 -5
- package/scripts/prove-local-intelligence.js +1 -3
- package/scripts/prove-packaged-runtime.js +75 -9
- package/scripts/prove-predictive-insights.js +1 -3
- package/scripts/prove-training-export.js +1 -3
- package/scripts/prove-workflow-contract.js +1 -5
- package/scripts/rate-limiter.js +3 -1
- package/scripts/reddit-dm-outreach.js +14 -4
- package/scripts/schedule-manager.js +3 -5
- package/scripts/security-scanner.js +448 -0
- package/scripts/self-distill-agent.js +579 -0
- package/scripts/semantic-dedup.js +115 -0
- package/scripts/skill-exporter.js +1 -3
- package/scripts/skill-generator.js +1 -5
- package/scripts/social-analytics/engagement-audit.js +1 -18
- package/scripts/social-analytics/pollers/linkedin.js +26 -16
- package/scripts/social-analytics/publishers/linkedin.js +1 -1
- package/scripts/social-analytics/publishers/zernio.js +51 -0
- package/scripts/social-pipeline.js +1 -3
- package/scripts/social-post-hourly.js +47 -4
- package/scripts/statusline-links.js +6 -5
- package/scripts/statusline.sh +29 -153
- package/scripts/sync-branch-protection.js +340 -0
- package/scripts/tessl-export.js +1 -3
- package/scripts/thumbgate-search.js +32 -1
- package/scripts/tool-kpi-tracker.js +1 -1
- package/scripts/tool-registry.js +106 -2
- package/scripts/vector-store.js +1 -5
- package/scripts/weekly-auto-post.js +1 -1
- package/scripts/workflow-sentinel.js +91 -0
- package/skills/thumbgate/SKILL.md +1 -1
- package/src/api/server.js +273 -4
- package/scripts/social-analytics/db/social-analytics.db-shm +0 -0
- /package/scripts/social-analytics/db/{social-analytics.db-wal → analytics.sqlite} +0 -0
package/public/compare.html
CHANGED
|
@@ -62,7 +62,7 @@
|
|
|
62
62
|
"name": "Is ThumbGate free?",
|
|
63
63
|
"acceptedAnswer": {
|
|
64
64
|
"@type": "Answer",
|
|
65
|
-
"text": "ThumbGate has a free tier that includes local enforcement with 3 daily feedback captures, 5 lesson searches, unlimited recall, blocking, and history-aware lesson distillation. Pro ($19/mo or $149/yr) adds a personal local dashboard and DPO export. Team rollout ($
|
|
65
|
+
"text": "ThumbGate has a free tier that includes local enforcement with 3 daily feedback captures, 5 lesson searches, unlimited recall, blocking, and history-aware lesson distillation. Pro ($19/mo or $149/yr) adds a personal local dashboard and DPO export. Team rollout ($99/seat/mo) adds a shared lesson database and org dashboard."
|
|
66
66
|
}
|
|
67
67
|
},
|
|
68
68
|
{
|
|
@@ -224,6 +224,14 @@
|
|
|
224
224
|
<td>Free</td>
|
|
225
225
|
<td>Free (open source)</td>
|
|
226
226
|
</tr>
|
|
227
|
+
<tr>
|
|
228
|
+
<td>Academic validation</td>
|
|
229
|
+
<td class="yes">Memento-Skills architecture (arXiv 2603.18743)</td>
|
|
230
|
+
<td class="no">—</td>
|
|
231
|
+
<td class="no">—</td>
|
|
232
|
+
<td class="no">—</td>
|
|
233
|
+
<td class="no">—</td>
|
|
234
|
+
</tr>
|
|
227
235
|
</table>
|
|
228
236
|
</div>
|
|
229
237
|
|
|
@@ -279,7 +287,7 @@
|
|
|
279
287
|
|
|
280
288
|
<div class="card">
|
|
281
289
|
<h3>Is ThumbGate free?</h3>
|
|
282
|
-
<p>ThumbGate has a free tier that includes local enforcement with 3 daily feedback captures, 5 lesson searches, unlimited recall, and pre-action gate blocking. Pro ($19/mo or $149/yr) adds a personal local dashboard and DPO export. Team rollout ($
|
|
290
|
+
<p>ThumbGate has a free tier that includes local enforcement with 3 daily feedback captures, 5 lesson searches, unlimited recall, and pre-action gate blocking. Pro ($19/mo or $149/yr) adds a personal local dashboard and DPO export. Team rollout ($99/seat/mo) adds a shared lesson database and org dashboard.</p>
|
|
283
291
|
</div>
|
|
284
292
|
|
|
285
293
|
<div class="card">
|
package/public/guide.html
CHANGED
|
@@ -292,7 +292,7 @@ npx thumbgate init --agent gemini</code></pre>
|
|
|
292
292
|
<tr><td>Auto-generates rules</td><td>Yes — from repeated failures</td><td>No</td><td>No</td></tr>
|
|
293
293
|
<tr><td>Agent support</td><td>Claude Code, Codex, Gemini, Amp, Cursor, OpenCode</td><td>Claude Code, Cursor, Windsurf, Cline</td><td>Claude, Cursor</td></tr>
|
|
294
294
|
<tr><td>Install</td><td><code>npx thumbgate init</code></td><td><code>npx speclock setup</code></td><td>Cloud signup</td></tr>
|
|
295
|
-
<tr><td>Cost</td><td>Free (Pro $19/mo or $149/yr, Team rollout $
|
|
295
|
+
<tr><td>Cost</td><td>Free (Pro $19/mo or $149/yr, Team rollout $99/seat/mo)</td><td>Free</td><td>Free tier + paid</td></tr>
|
|
296
296
|
</table>
|
|
297
297
|
|
|
298
298
|
<h2>Common Scenarios</h2>
|
|
@@ -310,7 +310,7 @@ npx thumbgate init --agent gemini</code></pre>
|
|
|
310
310
|
<pre><code>npx thumbgate init</code></pre>
|
|
311
311
|
<p>One command. Works with Claude Code, Cursor, Codex, Gemini, Amp, and OpenCode. Claude Code can also call Codex for review, adversarial review, and second-pass handoffs through the repo-local bridge plugin.</p>
|
|
312
312
|
<a href="https://thumbgate-production.up.railway.app/checkout/pro?utm_source=guide&utm_medium=cta_button&utm_campaign=pro_pack" class="cta">Get Pro — $19/mo or $149/yr</a>
|
|
313
|
-
<p style="color:var(--muted); font-size:0.85rem;">Free keeps local enforcement with 3 daily feedback captures, 5 lesson searches, unlimited recall, blocking, and history-aware lesson distillation. Pro
|
|
313
|
+
<p style="color:var(--muted); font-size:0.85rem;">Free keeps local enforcement with 3 daily feedback captures, 5 lesson searches, unlimited recall, blocking, and history-aware lesson distillation. Pro is $19/mo or $149/yr for a personal local dashboard and DPO export. Team rollout starts intake-first at $99/seat/mo with a 3-seat minimum for the hosted shared lesson DB, org dashboard, and generated review views.</p>
|
|
314
314
|
|
|
315
315
|
</div>
|
|
316
316
|
</body>
|
|
@@ -0,0 +1,161 @@
|
|
|
1
|
+
<!DOCTYPE html>
|
|
2
|
+
<html lang="en">
|
|
3
|
+
<head>
|
|
4
|
+
<meta charset="UTF-8">
|
|
5
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
6
|
+
<title>Claude Code Feedback Memory with Thumbs Up and Thumbs Down | ThumbGate</title>
|
|
7
|
+
<script defer data-domain="thumbgate-production.up.railway.app" src="https://plausible.io/js/script.js"></script>
|
|
8
|
+
<meta name="description" content="Claude Code can remember more when the memory is structured, but reliability improves when thumbs-up/down feedback also becomes enforceable behavior. That is ThumbGate.">
|
|
9
|
+
<meta name="keywords" content="Claude Code feedback, Claude Code memory, prevent repeated mistakes, ThumbGate, pre-action gates, Claude Code guardrails">
|
|
10
|
+
<meta property="og:title" content="Claude Code Feedback Memory That Actually Enforces">
|
|
11
|
+
<meta property="og:description" content="Claude Code can remember more when the memory is structured, but reliability improves when thumbs-up/down feedback also becomes enforceable behavior.">
|
|
12
|
+
<meta property="og:type" content="article">
|
|
13
|
+
<meta property="og:url" content="https://thumbgate-production.up.railway.app/guides/claude-code-prevent-repeated-mistakes">
|
|
14
|
+
<link rel="canonical" href="https://thumbgate-production.up.railway.app/guides/claude-code-prevent-repeated-mistakes">
|
|
15
|
+
<link rel="llm-context" href="/public/llm-context.md" type="text/markdown">
|
|
16
|
+
|
|
17
|
+
<script type="application/ld+json">
|
|
18
|
+
{
|
|
19
|
+
"@context": "https://schema.org",
|
|
20
|
+
"@type": "TechArticle",
|
|
21
|
+
"headline": "Claude Code Feedback Memory That Actually Enforces",
|
|
22
|
+
"description": "Claude Code can remember more when the memory is structured, but reliability improves when thumbs-up/down feedback also becomes enforceable behavior via ThumbGate pre-action gates.",
|
|
23
|
+
"author": {
|
|
24
|
+
"@type": "Person",
|
|
25
|
+
"name": "Igor Ganapolsky",
|
|
26
|
+
"url": "https://github.com/IgorGanapolsky"
|
|
27
|
+
},
|
|
28
|
+
"publisher": {
|
|
29
|
+
"@type": "Organization",
|
|
30
|
+
"name": "ThumbGate",
|
|
31
|
+
"url": "https://thumbgate-production.up.railway.app"
|
|
32
|
+
},
|
|
33
|
+
"datePublished": "2026-04-09",
|
|
34
|
+
"dateModified": "2026-04-09",
|
|
35
|
+
"mainEntityOfPage": "https://thumbgate-production.up.railway.app/guides/claude-code-prevent-repeated-mistakes",
|
|
36
|
+
"about": [
|
|
37
|
+
{"@type": "Thing", "name": "Claude Code memory"},
|
|
38
|
+
{"@type": "Thing", "name": "feedback enforcement"},
|
|
39
|
+
{"@type": "Thing", "name": "pre-action gates"}
|
|
40
|
+
]
|
|
41
|
+
}
|
|
42
|
+
</script>
|
|
43
|
+
|
|
44
|
+
<script type="application/ld+json">
|
|
45
|
+
{
|
|
46
|
+
"@context": "https://schema.org",
|
|
47
|
+
"@type": "FAQPage",
|
|
48
|
+
"mainEntity": [
|
|
49
|
+
{
|
|
50
|
+
"@type": "Question",
|
|
51
|
+
"name": "Does this only work with Claude Code?",
|
|
52
|
+
"acceptedAnswer": {
|
|
53
|
+
"@type": "Answer",
|
|
54
|
+
"text": "No. Claude Code is a strong entry point, but the same thumbs-up/down feedback loop and pre-action gates work across other MCP-compatible coding agents too."
|
|
55
|
+
}
|
|
56
|
+
},
|
|
57
|
+
{
|
|
58
|
+
"@type": "Question",
|
|
59
|
+
"name": "Why mention thumbs up as well as thumbs down?",
|
|
60
|
+
"acceptedAnswer": {
|
|
61
|
+
"@type": "Answer",
|
|
62
|
+
"text": "Because reinforcement matters. Good behavior should become easier to repeat, not only bad behavior harder to repeat."
|
|
63
|
+
}
|
|
64
|
+
},
|
|
65
|
+
{
|
|
66
|
+
"@type": "Question",
|
|
67
|
+
"name": "How does ThumbGate differ from Claude Code CLAUDE.md rules?",
|
|
68
|
+
"acceptedAnswer": {
|
|
69
|
+
"@type": "Answer",
|
|
70
|
+
"text": "CLAUDE.md rules are advisory and can be overridden by context overflow or chain-of-thought reasoning. ThumbGate pre-action gates intercept tool calls at the hook layer and physically block them before execution."
|
|
71
|
+
}
|
|
72
|
+
},
|
|
73
|
+
{
|
|
74
|
+
"@type": "Question",
|
|
75
|
+
"name": "Can ThumbGate prevent Claude Code from repeating the same mistake across sessions?",
|
|
76
|
+
"acceptedAnswer": {
|
|
77
|
+
"@type": "Answer",
|
|
78
|
+
"text": "Yes. ThumbGate persists lessons and prevention rules in a local SQLite+FTS5 database, so gates survive across sessions and prevent repeat failures even when the conversation context resets."
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
]
|
|
82
|
+
}
|
|
83
|
+
</script>
|
|
84
|
+
|
|
85
|
+
<link rel="stylesheet" href="/learn/learn.css">
|
|
86
|
+
</head>
|
|
87
|
+
<body>
|
|
88
|
+
|
|
89
|
+
<nav>
|
|
90
|
+
<a href="/" class="brand">ThumbGate</a>
|
|
91
|
+
<a href="/guide">Setup Guide</a>
|
|
92
|
+
<a href="/learn">Learn</a>
|
|
93
|
+
<a href="/dashboard">Dashboard</a>
|
|
94
|
+
<a href="https://github.com/IgorGanapolsky/ThumbGate" target="_blank" rel="noopener">GitHub</a>
|
|
95
|
+
</nav>
|
|
96
|
+
|
|
97
|
+
<div class="container">
|
|
98
|
+
<div class="breadcrumb"><a href="/learn">Learn</a> / <a href="/guides/claude-code-prevent-repeated-mistakes">Guides</a> / Claude Code Feedback</div>
|
|
99
|
+
<h1>Claude Code Feedback Memory That Actually Enforces</h1>
|
|
100
|
+
<p style="color:var(--muted);">3 min read · Designed for Claude Code, works across all MCP agents</p>
|
|
101
|
+
|
|
102
|
+
<div class="tldr"><strong>TL;DR:</strong> Claude Code can remember more when the memory is structured, but reliability improves when thumbs-up/down feedback also becomes enforceable behavior. That is ThumbGate's angle.</div>
|
|
103
|
+
|
|
104
|
+
<h2>The Claude Code problem</h2>
|
|
105
|
+
<p>Claude Code is strongest when the context is fresh, but teams still hit repeated mistakes, compaction drift, and re-explaining constraints. A memory file alone helps, but it does not physically stop the next bad move.</p>
|
|
106
|
+
|
|
107
|
+
<div class="callout callout-red">
|
|
108
|
+
<strong>Common pattern:</strong> You add a rule to CLAUDE.md. The agent follows it for two sessions. Then context fills up, the rule gets compressed, and the same mistake happens again. Memory without enforcement is a suggestion, not a guarantee.
|
|
109
|
+
</div>
|
|
110
|
+
|
|
111
|
+
<h2>The ThumbGate angle</h2>
|
|
112
|
+
<ul>
|
|
113
|
+
<li>Thumbs up reinforces good behavior.</li>
|
|
114
|
+
<li>Thumbs down becomes a prevention rule.</li>
|
|
115
|
+
<li>Pre-action gates stop the repeated mistake before the next command executes.</li>
|
|
116
|
+
<li>The same flow works across Cursor, Codex, Gemini, Amp, and OpenCode.</li>
|
|
117
|
+
</ul>
|
|
118
|
+
|
|
119
|
+
<h2>Install for Claude Code</h2>
|
|
120
|
+
<pre><code>npx thumbgate init --agent claude-code</code></pre>
|
|
121
|
+
<p>Auto-detects Claude Code and configures the PreToolUse hook. No build step, no cloud account.</p>
|
|
122
|
+
|
|
123
|
+
<h2>What to expect</h2>
|
|
124
|
+
<p>Compatibility proof, install speed, and verification evidence matter more than generic "memory" copy. ThumbGate is the enforcement layer for Claude Code, not just another notebook of past context.</p>
|
|
125
|
+
|
|
126
|
+
<h2>Frequently Asked Questions</h2>
|
|
127
|
+
<h3>Does this only work with Claude Code?</h3>
|
|
128
|
+
<p>No. Claude Code is a strong entry point, but the same thumbs-up/down feedback loop and pre-action gates work across other MCP-compatible coding agents too.</p>
|
|
129
|
+
|
|
130
|
+
<h3>Why mention thumbs up as well as thumbs down?</h3>
|
|
131
|
+
<p>Because reinforcement matters. Good behavior should become easier to repeat, not only bad behavior harder to repeat.</p>
|
|
132
|
+
|
|
133
|
+
<h3>How does ThumbGate differ from Claude Code CLAUDE.md rules?</h3>
|
|
134
|
+
<p>CLAUDE.md rules are advisory and can be overridden by context overflow or chain-of-thought reasoning. ThumbGate pre-action gates intercept tool calls at the hook layer and physically block them before execution.</p>
|
|
135
|
+
|
|
136
|
+
<h3>Can ThumbGate prevent Claude Code from repeating the same mistake across sessions?</h3>
|
|
137
|
+
<p>Yes. ThumbGate persists lessons and prevention rules in a local SQLite+FTS5 database, so gates survive across sessions and prevent repeat failures even when the conversation context resets.</p>
|
|
138
|
+
|
|
139
|
+
<div class="cta-box">
|
|
140
|
+
<h2 style="color:var(--text);font-size:1.3rem;margin:0 0 8px;">Pro for operators, Team for governance</h2>
|
|
141
|
+
<p>Start free with local gates. Pro is $19/mo or $149/yr for the personal dashboard and exports. Team rollout anchors at $99/seat/mo when shared lessons and org visibility matter.</p>
|
|
142
|
+
<div class="cta-install">$ npx thumbgate init --agent claude-code</div>
|
|
143
|
+
<p style="margin-top:8px;"><a href="/pro">See Pro and Team pricing →</a></p>
|
|
144
|
+
</div>
|
|
145
|
+
|
|
146
|
+
<div class="related">
|
|
147
|
+
<h3>Related</h3>
|
|
148
|
+
<a href="/guides/pre-action-gates">What Are Pre-Action Gates? →</a>
|
|
149
|
+
<a href="/compare/mem0">ThumbGate vs Mem0 →</a>
|
|
150
|
+
<a href="/guides/stop-repeated-ai-agent-mistakes">Stop Repeated AI Agent Mistakes →</a>
|
|
151
|
+
<a href="https://github.com/IgorGanapolsky/ThumbGate" target="_blank" rel="noopener">GitHub →</a>
|
|
152
|
+
</div>
|
|
153
|
+
</div>
|
|
154
|
+
|
|
155
|
+
<div class="sticky-cta">
|
|
156
|
+
<span style="color:var(--muted)">Try it now:</span>
|
|
157
|
+
<code>npx thumbgate init --agent claude-code</code>
|
|
158
|
+
<a href="https://github.com/IgorGanapolsky/ThumbGate" target="_blank" rel="noopener">GitHub →</a>
|
|
159
|
+
</div>
|
|
160
|
+
</body>
|
|
161
|
+
</html>
|
|
@@ -0,0 +1,158 @@
|
|
|
1
|
+
<!DOCTYPE html>
|
|
2
|
+
<html lang="en">
|
|
3
|
+
<head>
|
|
4
|
+
<meta charset="UTF-8">
|
|
5
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
6
|
+
<title>Codex CLI Guardrails | Prevent Repeated Mistakes with ThumbGate</title>
|
|
7
|
+
<script defer data-domain="thumbgate-production.up.railway.app" src="https://plausible.io/js/script.js"></script>
|
|
8
|
+
<meta name="description" content="Codex CLI can move quickly through repo tasks, but buyers need more than good intentions. ThumbGate adds a reliability gateway with pre-action enforcement.">
|
|
9
|
+
<meta name="keywords" content="Codex CLI guardrails, Codex CLI safety, prevent Codex mistakes, ThumbGate, pre-action gates, AI coding agent feedback">
|
|
10
|
+
<meta property="og:title" content="Codex CLI Guardrails That Actually Enforce">
|
|
11
|
+
<meta property="og:description" content="Codex CLI can move quickly through repo tasks, but buyers need more than good intentions. ThumbGate adds a reliability gateway with pre-action enforcement.">
|
|
12
|
+
<meta property="og:type" content="article">
|
|
13
|
+
<meta property="og:url" content="https://thumbgate-production.up.railway.app/guides/codex-cli-guardrails">
|
|
14
|
+
<link rel="canonical" href="https://thumbgate-production.up.railway.app/guides/codex-cli-guardrails">
|
|
15
|
+
<link rel="llm-context" href="/public/llm-context.md" type="text/markdown">
|
|
16
|
+
|
|
17
|
+
<script type="application/ld+json">
|
|
18
|
+
{
|
|
19
|
+
"@context": "https://schema.org",
|
|
20
|
+
"@type": "TechArticle",
|
|
21
|
+
"headline": "Codex CLI Guardrails That Actually Enforce",
|
|
22
|
+
"description": "Codex CLI can move quickly through repo tasks, but buyers need more than good intentions. ThumbGate adds a reliability gateway with pre-action enforcement.",
|
|
23
|
+
"author": {
|
|
24
|
+
"@type": "Person",
|
|
25
|
+
"name": "Igor Ganapolsky",
|
|
26
|
+
"url": "https://github.com/IgorGanapolsky"
|
|
27
|
+
},
|
|
28
|
+
"publisher": {
|
|
29
|
+
"@type": "Organization",
|
|
30
|
+
"name": "ThumbGate",
|
|
31
|
+
"url": "https://thumbgate-production.up.railway.app"
|
|
32
|
+
},
|
|
33
|
+
"datePublished": "2026-04-09",
|
|
34
|
+
"dateModified": "2026-04-09",
|
|
35
|
+
"mainEntityOfPage": "https://thumbgate-production.up.railway.app/guides/codex-cli-guardrails",
|
|
36
|
+
"about": [
|
|
37
|
+
{"@type": "Thing", "name": "Codex CLI guardrails"},
|
|
38
|
+
{"@type": "Thing", "name": "AI coding agent safety"},
|
|
39
|
+
{"@type": "Thing", "name": "pre-action gates"}
|
|
40
|
+
]
|
|
41
|
+
}
|
|
42
|
+
</script>
|
|
43
|
+
|
|
44
|
+
<script type="application/ld+json">
|
|
45
|
+
{
|
|
46
|
+
"@context": "https://schema.org",
|
|
47
|
+
"@type": "FAQPage",
|
|
48
|
+
"mainEntity": [
|
|
49
|
+
{
|
|
50
|
+
"@type": "Question",
|
|
51
|
+
"name": "Is ThumbGate only for Codex CLI?",
|
|
52
|
+
"acceptedAnswer": {
|
|
53
|
+
"@type": "Answer",
|
|
54
|
+
"text": "No. Codex CLI is one supported workflow, but the same feedback and enforcement loop also works across Claude Code, Cursor, Gemini, Amp, and OpenCode."
|
|
55
|
+
}
|
|
56
|
+
},
|
|
57
|
+
{
|
|
58
|
+
"@type": "Question",
|
|
59
|
+
"name": "How are Codex CLI guardrails different from prompt instructions?",
|
|
60
|
+
"acceptedAnswer": {
|
|
61
|
+
"@type": "Answer",
|
|
62
|
+
"text": "Prompt instructions are advisory. ThumbGate pre-action gates intercept the tool call itself and block the known-bad pattern before execution."
|
|
63
|
+
}
|
|
64
|
+
},
|
|
65
|
+
{
|
|
66
|
+
"@type": "Question",
|
|
67
|
+
"name": "Can ThumbGate work with Codex CLI sandbox mode?",
|
|
68
|
+
"acceptedAnswer": {
|
|
69
|
+
"@type": "Answer",
|
|
70
|
+
"text": "Yes. ThumbGate adds an additional layer of enforcement on top of any existing sandbox or permission model, so guardrails apply even when sandbox restrictions are relaxed."
|
|
71
|
+
}
|
|
72
|
+
},
|
|
73
|
+
{
|
|
74
|
+
"@type": "Question",
|
|
75
|
+
"name": "What happens when a gate blocks a Codex CLI command?",
|
|
76
|
+
"acceptedAnswer": {
|
|
77
|
+
"@type": "Answer",
|
|
78
|
+
"text": "The agent receives a rejection with the reason and the linked prevention rule, then adapts its approach. The blocked command never executes."
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
]
|
|
82
|
+
}
|
|
83
|
+
</script>
|
|
84
|
+
|
|
85
|
+
<link rel="stylesheet" href="/learn/learn.css">
|
|
86
|
+
</head>
|
|
87
|
+
<body>
|
|
88
|
+
|
|
89
|
+
<nav>
|
|
90
|
+
<a href="/" class="brand">ThumbGate</a>
|
|
91
|
+
<a href="/guide">Setup Guide</a>
|
|
92
|
+
<a href="/learn">Learn</a>
|
|
93
|
+
<a href="/dashboard">Dashboard</a>
|
|
94
|
+
<a href="https://github.com/IgorGanapolsky/ThumbGate" target="_blank" rel="noopener">GitHub</a>
|
|
95
|
+
</nav>
|
|
96
|
+
|
|
97
|
+
<div class="container">
|
|
98
|
+
<div class="breadcrumb"><a href="/learn">Learn</a> / <a href="/guides/codex-cli-guardrails">Guides</a> / Codex CLI Guardrails</div>
|
|
99
|
+
<h1>Codex CLI Guardrails That Actually Enforce</h1>
|
|
100
|
+
<p style="color:var(--muted);">3 min read · Designed for Codex CLI, works across all MCP agents</p>
|
|
101
|
+
|
|
102
|
+
<div class="tldr"><strong>TL;DR:</strong> Codex CLI can move quickly through repo tasks, but buyers need more than good intentions. ThumbGate adds a reliability gateway so repeated mistakes become searchable lessons, linked rules, and pre-action enforcement.</div>
|
|
103
|
+
|
|
104
|
+
<h2>What Codex CLI users usually need</h2>
|
|
105
|
+
<p>The problem is rarely a single bad command. It is the cost of the same failure pattern showing up across branches, sessions, or rushed workflows. Once that pattern is obvious, the buyer wants a durable control point.</p>
|
|
106
|
+
|
|
107
|
+
<h2>What ThumbGate adds</h2>
|
|
108
|
+
<ul>
|
|
109
|
+
<li>Feedback capture with explicit thumbs-up/down signals.</li>
|
|
110
|
+
<li>Searchable lessons and linked prevention rules.</li>
|
|
111
|
+
<li>Pre-action gates that block repeated bad commands before they run.</li>
|
|
112
|
+
<li>Verification evidence that gives teams something concrete to audit.</li>
|
|
113
|
+
</ul>
|
|
114
|
+
|
|
115
|
+
<div class="callout">
|
|
116
|
+
<strong>Why this matters:</strong> Guardrails are easier to buy when the outcome is obvious: less rework, fewer repeated failures, and a visible chain from operator feedback to enforced behavior.
|
|
117
|
+
</div>
|
|
118
|
+
|
|
119
|
+
<h2>Install for Codex CLI</h2>
|
|
120
|
+
<pre><code>npx thumbgate init --agent codex</code></pre>
|
|
121
|
+
<p>Auto-detects Codex CLI and configures the PreToolUse hook. No build step, no cloud account.</p>
|
|
122
|
+
|
|
123
|
+
<h2>Frequently Asked Questions</h2>
|
|
124
|
+
<h3>Is ThumbGate only for Codex CLI?</h3>
|
|
125
|
+
<p>No. Codex CLI is one supported workflow, but the same feedback and enforcement loop also works across Claude Code, Cursor, Gemini, Amp, and OpenCode.</p>
|
|
126
|
+
|
|
127
|
+
<h3>How are Codex CLI guardrails different from prompt instructions?</h3>
|
|
128
|
+
<p>Prompt instructions are advisory. ThumbGate pre-action gates intercept the tool call itself and block the known-bad pattern before execution.</p>
|
|
129
|
+
|
|
130
|
+
<h3>Can ThumbGate work with Codex CLI sandbox mode?</h3>
|
|
131
|
+
<p>Yes. ThumbGate adds an additional layer of enforcement on top of any existing sandbox or permission model, so guardrails apply even when sandbox restrictions are relaxed.</p>
|
|
132
|
+
|
|
133
|
+
<h3>What happens when a gate blocks a Codex CLI command?</h3>
|
|
134
|
+
<p>The agent receives a rejection with the reason and the linked prevention rule, then adapts its approach. The blocked command never executes.</p>
|
|
135
|
+
|
|
136
|
+
<div class="cta-box">
|
|
137
|
+
<h2 style="color:var(--text);font-size:1.3rem;margin:0 0 8px;">Pro for operators, Team for governance</h2>
|
|
138
|
+
<p>Start free with local gates. Pro is $19/mo or $149/yr for the personal dashboard and exports. Team rollout anchors at $99/seat/mo when shared lessons and org visibility matter.</p>
|
|
139
|
+
<div class="cta-install">$ npx thumbgate init --agent codex</div>
|
|
140
|
+
<p style="margin-top:8px;"><a href="/pro">See Pro and Team pricing →</a></p>
|
|
141
|
+
</div>
|
|
142
|
+
|
|
143
|
+
<div class="related">
|
|
144
|
+
<h3>Related</h3>
|
|
145
|
+
<a href="/guides/pre-action-gates">What Are Pre-Action Gates? →</a>
|
|
146
|
+
<a href="/compare/mem0">ThumbGate vs Mem0 →</a>
|
|
147
|
+
<a href="/guides/stop-repeated-ai-agent-mistakes">Stop Repeated AI Agent Mistakes →</a>
|
|
148
|
+
<a href="https://github.com/IgorGanapolsky/ThumbGate" target="_blank" rel="noopener">GitHub →</a>
|
|
149
|
+
</div>
|
|
150
|
+
</div>
|
|
151
|
+
|
|
152
|
+
<div class="sticky-cta">
|
|
153
|
+
<span style="color:var(--muted)">Try it now:</span>
|
|
154
|
+
<code>npx thumbgate init --agent codex</code>
|
|
155
|
+
<a href="https://github.com/IgorGanapolsky/ThumbGate" target="_blank" rel="noopener">GitHub →</a>
|
|
156
|
+
</div>
|
|
157
|
+
</body>
|
|
158
|
+
</html>
|
|
@@ -0,0 +1,161 @@
|
|
|
1
|
+
<!DOCTYPE html>
|
|
2
|
+
<html lang="en">
|
|
3
|
+
<head>
|
|
4
|
+
<meta charset="UTF-8">
|
|
5
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
6
|
+
<title>Cursor Agent Guardrails | Stop Repeated Mistakes with ThumbGate</title>
|
|
7
|
+
<script defer data-domain="thumbgate-production.up.railway.app" src="https://plausible.io/js/script.js"></script>
|
|
8
|
+
<meta name="description" content="Cursor moves fast, which makes repeated mistakes expensive. ThumbGate gives Cursor users a feedback loop that turns thumbs-down corrections into pre-action gates.">
|
|
9
|
+
<meta name="keywords" content="Cursor guardrails, Cursor prevent mistakes, Cursor agent safety, ThumbGate, pre-action gates, AI coding agent feedback">
|
|
10
|
+
<meta property="og:title" content="Cursor Guardrails That Block Repeated Mistakes">
|
|
11
|
+
<meta property="og:description" content="Cursor moves fast, which makes repeated mistakes expensive. ThumbGate gives Cursor users a feedback loop that turns thumbs-down corrections into pre-action gates.">
|
|
12
|
+
<meta property="og:type" content="article">
|
|
13
|
+
<meta property="og:url" content="https://thumbgate-production.up.railway.app/guides/cursor-prevent-repeated-mistakes">
|
|
14
|
+
<link rel="canonical" href="https://thumbgate-production.up.railway.app/guides/cursor-prevent-repeated-mistakes">
|
|
15
|
+
<link rel="llm-context" href="/public/llm-context.md" type="text/markdown">
|
|
16
|
+
|
|
17
|
+
<script type="application/ld+json">
|
|
18
|
+
{
|
|
19
|
+
"@context": "https://schema.org",
|
|
20
|
+
"@type": "TechArticle",
|
|
21
|
+
"headline": "Cursor Agent Guardrails That Block Repeated Mistakes",
|
|
22
|
+
"description": "Cursor moves fast, which makes repeated mistakes expensive. ThumbGate gives Cursor users a feedback loop that turns thumbs-down corrections into pre-action gates.",
|
|
23
|
+
"author": {
|
|
24
|
+
"@type": "Person",
|
|
25
|
+
"name": "Igor Ganapolsky",
|
|
26
|
+
"url": "https://github.com/IgorGanapolsky"
|
|
27
|
+
},
|
|
28
|
+
"publisher": {
|
|
29
|
+
"@type": "Organization",
|
|
30
|
+
"name": "ThumbGate",
|
|
31
|
+
"url": "https://thumbgate-production.up.railway.app"
|
|
32
|
+
},
|
|
33
|
+
"datePublished": "2026-04-09",
|
|
34
|
+
"dateModified": "2026-04-09",
|
|
35
|
+
"mainEntityOfPage": "https://thumbgate-production.up.railway.app/guides/cursor-prevent-repeated-mistakes",
|
|
36
|
+
"about": [
|
|
37
|
+
{"@type": "Thing", "name": "Cursor guardrails"},
|
|
38
|
+
{"@type": "Thing", "name": "AI coding agent safety"},
|
|
39
|
+
{"@type": "Thing", "name": "pre-action gates"}
|
|
40
|
+
]
|
|
41
|
+
}
|
|
42
|
+
</script>
|
|
43
|
+
|
|
44
|
+
<script type="application/ld+json">
|
|
45
|
+
{
|
|
46
|
+
"@context": "https://schema.org",
|
|
47
|
+
"@type": "FAQPage",
|
|
48
|
+
"mainEntity": [
|
|
49
|
+
{
|
|
50
|
+
"@type": "Question",
|
|
51
|
+
"name": "Do I need to leave Cursor to use ThumbGate?",
|
|
52
|
+
"acceptedAnswer": {
|
|
53
|
+
"@type": "Answer",
|
|
54
|
+
"text": "No. ThumbGate is designed to sit alongside existing coding-agent workflows so you can add enforcement without switching tools."
|
|
55
|
+
}
|
|
56
|
+
},
|
|
57
|
+
{
|
|
58
|
+
"@type": "Question",
|
|
59
|
+
"name": "What kind of mistakes can Cursor guardrails stop?",
|
|
60
|
+
"acceptedAnswer": {
|
|
61
|
+
"@type": "Answer",
|
|
62
|
+
"text": "Repeated failures like risky git actions, destructive scripts, skipped verification, or any other known-bad pattern you have already corrected once."
|
|
63
|
+
}
|
|
64
|
+
},
|
|
65
|
+
{
|
|
66
|
+
"@type": "Question",
|
|
67
|
+
"name": "How is ThumbGate different from a Cursor rules file?",
|
|
68
|
+
"acceptedAnswer": {
|
|
69
|
+
"@type": "Answer",
|
|
70
|
+
"text": "Static rules help on day one. ThumbGate helps on day two and day twenty because it keeps learning from live corrections instead of relying on a fixed checklist that drifts out of date."
|
|
71
|
+
}
|
|
72
|
+
},
|
|
73
|
+
{
|
|
74
|
+
"@type": "Question",
|
|
75
|
+
"name": "Does ThumbGate slow down Cursor?",
|
|
76
|
+
"acceptedAnswer": {
|
|
77
|
+
"@type": "Answer",
|
|
78
|
+
"text": "No. The PreToolUse hook adds a sub-millisecond pattern check before each tool call. You keep Cursor's speed while gaining enforcement."
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
]
|
|
82
|
+
}
|
|
83
|
+
</script>
|
|
84
|
+
|
|
85
|
+
<link rel="stylesheet" href="/learn/learn.css">
|
|
86
|
+
</head>
|
|
87
|
+
<body>
|
|
88
|
+
|
|
89
|
+
<nav>
|
|
90
|
+
<a href="/" class="brand">ThumbGate</a>
|
|
91
|
+
<a href="/guide">Setup Guide</a>
|
|
92
|
+
<a href="/learn">Learn</a>
|
|
93
|
+
<a href="/dashboard">Dashboard</a>
|
|
94
|
+
<a href="https://github.com/IgorGanapolsky/ThumbGate" target="_blank" rel="noopener">GitHub</a>
|
|
95
|
+
</nav>
|
|
96
|
+
|
|
97
|
+
<div class="container">
|
|
98
|
+
<div class="breadcrumb"><a href="/learn">Learn</a> / <a href="/guides/cursor-prevent-repeated-mistakes">Guides</a> / Cursor Guardrails</div>
|
|
99
|
+
<h1>Cursor Guardrails That Block Repeated Mistakes</h1>
|
|
100
|
+
<p style="color:var(--muted);">3 min read · Designed for Cursor, works across all MCP agents</p>
|
|
101
|
+
|
|
102
|
+
<div class="tldr"><strong>TL;DR:</strong> Cursor moves fast, which makes repeated mistakes expensive. ThumbGate gives Cursor users a feedback loop that turns thumbs-down corrections into pre-action gates before the next risky step fires.</div>
|
|
103
|
+
|
|
104
|
+
<h2>The Cursor workflow problem</h2>
|
|
105
|
+
<p>Cursor can move from idea to edits quickly, but the failure mode is familiar: the same wrong refactor, risky shell command, or skipped check comes back in the next session because nothing hardened the workflow.</p>
|
|
106
|
+
|
|
107
|
+
<div class="callout callout-red">
|
|
108
|
+
<strong>Sound familiar?</strong> You correct the agent. It apologizes. Next session, same mistake. The problem is not the agent's memory. The problem is that nothing enforces what was learned.
|
|
109
|
+
</div>
|
|
110
|
+
|
|
111
|
+
<h2>How ThumbGate fits into Cursor</h2>
|
|
112
|
+
<ul>
|
|
113
|
+
<li>Capture thumbs-up/down feedback on agent behavior.</li>
|
|
114
|
+
<li>Promote repeated failures into prevention rules.</li>
|
|
115
|
+
<li>Block known-bad commands with pre-action gates before execution.</li>
|
|
116
|
+
<li>Keep the memory and gates local-first so the operator retains control.</li>
|
|
117
|
+
</ul>
|
|
118
|
+
|
|
119
|
+
<h2>Install for Cursor</h2>
|
|
120
|
+
<pre><code>npx thumbgate init --agent cursor</code></pre>
|
|
121
|
+
<p>Auto-detects Cursor and configures the PreToolUse hook. No build step, no cloud account.</p>
|
|
122
|
+
|
|
123
|
+
<h2>What makes this different from a rule file</h2>
|
|
124
|
+
<p>Static rules help on day one. ThumbGate helps on day two and day twenty because it keeps learning from live corrections instead of relying on a fixed checklist that drifts out of date.</p>
|
|
125
|
+
|
|
126
|
+
<h2>Frequently Asked Questions</h2>
|
|
127
|
+
<h3>Do I need to leave Cursor to use ThumbGate?</h3>
|
|
128
|
+
<p>No. ThumbGate is designed to sit alongside existing coding-agent workflows so you can add enforcement without switching tools.</p>
|
|
129
|
+
|
|
130
|
+
<h3>What kind of mistakes can Cursor guardrails stop?</h3>
|
|
131
|
+
<p>Repeated failures like risky git actions, destructive scripts, skipped verification, or any other known-bad pattern you have already corrected once.</p>
|
|
132
|
+
|
|
133
|
+
<h3>How is ThumbGate different from a Cursor rules file?</h3>
|
|
134
|
+
<p>Static rules help on day one. ThumbGate helps on day two and day twenty because it keeps learning from live corrections instead of relying on a fixed checklist that drifts out of date.</p>
|
|
135
|
+
|
|
136
|
+
<h3>Does ThumbGate slow down Cursor?</h3>
|
|
137
|
+
<p>No. The PreToolUse hook adds a sub-millisecond pattern check before each tool call. You keep Cursor's speed while gaining enforcement.</p>
|
|
138
|
+
|
|
139
|
+
<div class="cta-box">
|
|
140
|
+
<h2 style="color:var(--text);font-size:1.3rem;margin:0 0 8px;">Pro for operators, Team for governance</h2>
|
|
141
|
+
<p>Start free with local gates. Pro is $19/mo or $149/yr for the personal dashboard and exports. Team rollout anchors at $99/seat/mo when shared lessons and org visibility matter.</p>
|
|
142
|
+
<div class="cta-install">$ npx thumbgate init --agent cursor</div>
|
|
143
|
+
<p style="margin-top:8px;"><a href="/pro">See Pro and Team pricing →</a></p>
|
|
144
|
+
</div>
|
|
145
|
+
|
|
146
|
+
<div class="related">
|
|
147
|
+
<h3>Related</h3>
|
|
148
|
+
<a href="/guides/stop-repeated-ai-agent-mistakes">Stop Repeated AI Agent Mistakes →</a>
|
|
149
|
+
<a href="/guides/pre-action-gates">What Are Pre-Action Gates? →</a>
|
|
150
|
+
<a href="/compare/speclock">ThumbGate vs SpecLock →</a>
|
|
151
|
+
<a href="https://github.com/IgorGanapolsky/ThumbGate" target="_blank" rel="noopener">GitHub →</a>
|
|
152
|
+
</div>
|
|
153
|
+
</div>
|
|
154
|
+
|
|
155
|
+
<div class="sticky-cta">
|
|
156
|
+
<span style="color:var(--muted)">Try it now:</span>
|
|
157
|
+
<code>npx thumbgate init --agent cursor</code>
|
|
158
|
+
<a href="https://github.com/IgorGanapolsky/ThumbGate" target="_blank" rel="noopener">GitHub →</a>
|
|
159
|
+
</div>
|
|
160
|
+
</body>
|
|
161
|
+
</html>
|