thumbgate 1.4.2 → 1.4.4

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 (279) hide show
  1. package/.claude-plugin/README.md +45 -34
  2. package/.claude-plugin/marketplace.json +3 -3
  3. package/.claude-plugin/plugin.json +3 -3
  4. package/.well-known/llms.txt +1 -1
  5. package/.well-known/mcp/server-card.json +1 -1
  6. package/README.md +26 -2
  7. package/adapters/README.md +4 -1
  8. package/adapters/claude/.mcp.json +2 -2
  9. package/adapters/codex/config.toml +2 -2
  10. package/adapters/mcp/server-stdio.js +10 -4
  11. package/adapters/opencode/opencode.json +1 -1
  12. package/bin/cli.js +246 -90
  13. package/config/mcp-allowlists.json +11 -3
  14. package/package.json +184 -21
  15. package/scripts/audit-trail.js +25 -15
  16. package/scripts/auto-wire-hooks.js +127 -0
  17. package/scripts/cli-demo.js +102 -0
  18. package/scripts/cli-schema.js +285 -0
  19. package/scripts/cli-status.js +166 -0
  20. package/scripts/cross-encoder-reranker.js +235 -0
  21. package/scripts/explore-subcommands.js +277 -0
  22. package/scripts/explore.js +569 -0
  23. package/scripts/feedback-loop.js +20 -6
  24. package/scripts/lesson-inference.js +7 -1
  25. package/scripts/lesson-reranker.js +263 -0
  26. package/scripts/lesson-retrieval.js +34 -17
  27. package/scripts/lesson-search.js +69 -0
  28. package/scripts/perplexity-client.js +210 -0
  29. package/scripts/reflector-agent.js +2 -2
  30. package/scripts/statusline-local-stats.js +3 -1
  31. package/scripts/statusline.sh +12 -11
  32. package/src/api/server.js +178 -17
  33. package/src/index.js +3 -0
  34. package/.claude-plugin/bundle/icon.png +0 -0
  35. package/.claude-plugin/bundle/icon.svg +0 -18
  36. package/.claude-plugin/bundle/server/index.js +0 -24
  37. package/adapters/chatgpt/INSTALL.md +0 -138
  38. package/bin/memory.sh +0 -64
  39. package/bin/obsidian-sync.sh +0 -20
  40. package/plugins/amp-skill/INSTALL.md +0 -52
  41. package/plugins/amp-skill/SKILL.md +0 -64
  42. package/plugins/claude-codex-bridge/.claude-plugin/plugin.json +0 -22
  43. package/plugins/claude-codex-bridge/.mcp.json +0 -14
  44. package/plugins/claude-codex-bridge/INSTALL.md +0 -43
  45. package/plugins/claude-codex-bridge/README.md +0 -46
  46. package/plugins/claude-codex-bridge/scripts/codex-bridge.js +0 -286
  47. package/plugins/claude-codex-bridge/skills/adversarial-review/SKILL.md +0 -24
  48. package/plugins/claude-codex-bridge/skills/result/SKILL.md +0 -22
  49. package/plugins/claude-codex-bridge/skills/review/SKILL.md +0 -28
  50. package/plugins/claude-codex-bridge/skills/second-pass/SKILL.md +0 -27
  51. package/plugins/claude-codex-bridge/skills/setup/SKILL.md +0 -21
  52. package/plugins/claude-codex-bridge/skills/status/SKILL.md +0 -19
  53. package/plugins/claude-skill/INSTALL.md +0 -55
  54. package/plugins/claude-skill/SKILL.md +0 -46
  55. package/plugins/codex-profile/.codex-plugin/plugin.json +0 -43
  56. package/plugins/codex-profile/.mcp.json +0 -14
  57. package/plugins/codex-profile/AGENTS.md +0 -20
  58. package/plugins/codex-profile/INSTALL.md +0 -89
  59. package/plugins/codex-profile/README.md +0 -61
  60. package/plugins/cursor-marketplace/.cursor-plugin/plugin.json +0 -23
  61. package/plugins/cursor-marketplace/CHANGELOG.md +0 -30
  62. package/plugins/cursor-marketplace/LICENSE +0 -21
  63. package/plugins/cursor-marketplace/README.md +0 -124
  64. package/plugins/cursor-marketplace/agents/reliability-reviewer.md +0 -31
  65. package/plugins/cursor-marketplace/assets/logo-400x400.png +0 -0
  66. package/plugins/cursor-marketplace/commands/capture-feedback.md +0 -33
  67. package/plugins/cursor-marketplace/commands/check-gates.md +0 -25
  68. package/plugins/cursor-marketplace/commands/show-lessons.md +0 -27
  69. package/plugins/cursor-marketplace/hooks/hooks.json +0 -10
  70. package/plugins/cursor-marketplace/mcp.json +0 -14
  71. package/plugins/cursor-marketplace/rules/feedback-capture.mdc +0 -34
  72. package/plugins/cursor-marketplace/rules/pre-action-gates.mdc +0 -30
  73. package/plugins/cursor-marketplace/rules/session-continuity.mdc +0 -28
  74. package/plugins/cursor-marketplace/scripts/gate-check.sh +0 -21
  75. package/plugins/cursor-marketplace/skills/capture-feedback/SKILL.md +0 -48
  76. package/plugins/cursor-marketplace/skills/prevention-rules/SKILL.md +0 -31
  77. package/plugins/cursor-marketplace/skills/recall-context/SKILL.md +0 -30
  78. package/plugins/cursor-marketplace/skills/search-lessons/SKILL.md +0 -33
  79. package/plugins/gemini-extension/INSTALL.md +0 -92
  80. package/plugins/gemini-extension/gemini_prompt.txt +0 -14
  81. package/plugins/gemini-extension/tool_contract.json +0 -45
  82. package/plugins/opencode-profile/INSTALL.md +0 -57
  83. package/public/assets/instagram-card.png +0 -0
  84. package/public/assets/tiktok-agent-memory.mp4 +0 -0
  85. package/public/blog.html +0 -474
  86. package/public/compare/mem0.html +0 -189
  87. package/public/compare/speclock.html +0 -180
  88. package/public/compare.html +0 -310
  89. package/public/dashboard.html +0 -1100
  90. package/public/guide.html +0 -317
  91. package/public/guides/claude-code-prevent-repeated-mistakes.html +0 -161
  92. package/public/guides/codex-cli-guardrails.html +0 -158
  93. package/public/guides/cursor-prevent-repeated-mistakes.html +0 -161
  94. package/public/guides/pre-action-gates.html +0 -162
  95. package/public/guides/stop-repeated-ai-agent-mistakes.html +0 -159
  96. package/public/index.html +0 -1128
  97. package/public/js/buyer-intent.js +0 -252
  98. package/public/learn/agent-harness-pattern.html +0 -180
  99. package/public/learn/ai-agent-persistent-memory.html +0 -203
  100. package/public/learn/learn.css +0 -45
  101. package/public/learn/mcp-pre-action-gates-explained.html +0 -172
  102. package/public/learn/stop-ai-agent-force-push.html +0 -134
  103. package/public/learn/vibe-coding-safety-net.html +0 -142
  104. package/public/learn.html +0 -274
  105. package/public/lessons.html +0 -967
  106. package/public/llm-context.md +0 -140
  107. package/public/pro.html +0 -1087
  108. package/public/vercel.json +0 -8
  109. package/scripts/a2ui-engine.js +0 -73
  110. package/scripts/adk-consolidator.js +0 -274
  111. package/scripts/agent-security-hardening.js +0 -225
  112. package/scripts/ai-search-visibility.js +0 -142
  113. package/scripts/autonomous-sales-agent.js +0 -39
  114. package/scripts/autoresearch-runner.js +0 -216
  115. package/scripts/background-agent-governance.js +0 -229
  116. package/scripts/behavioral-extraction.js +0 -93
  117. package/scripts/budget-enforcer.js +0 -173
  118. package/scripts/budget-guard.js +0 -173
  119. package/scripts/build-claude-mcpb.js +0 -255
  120. package/scripts/build-codex-plugin.js +0 -152
  121. package/scripts/capture-railway-diagnostics.sh +0 -97
  122. package/scripts/changeset-check.js +0 -372
  123. package/scripts/check-congruence.js +0 -443
  124. package/scripts/computer-use-firewall.js +0 -280
  125. package/scripts/content-engine/linkedin-content-generator.js +0 -154
  126. package/scripts/content-engine/output/linkedin-memento-validation.md +0 -17
  127. package/scripts/content-engine/output/linkedin-posts-2026-04-09.md +0 -175
  128. package/scripts/content-engine/reddit-thread-finder.js +0 -154
  129. package/scripts/context-engine.js +0 -710
  130. package/scripts/daily-digest.js +0 -11
  131. package/scripts/data-governance.js +0 -173
  132. package/scripts/deploy-gcp.sh +0 -44
  133. package/scripts/deploy-policy.js +0 -249
  134. package/scripts/disagreement-mining.js +0 -315
  135. package/scripts/dpo-optimizer.js +0 -206
  136. package/scripts/ensure-repo-bootstrap.js +0 -130
  137. package/scripts/ephemeral-agent-store.js +0 -212
  138. package/scripts/eval-harness.js +0 -56
  139. package/scripts/export-kto-pairs.js +0 -309
  140. package/scripts/export-training.js +0 -446
  141. package/scripts/feedback-fallback.js +0 -111
  142. package/scripts/feedback-inbox-read.js +0 -162
  143. package/scripts/feedback-root-consolidator.js +0 -233
  144. package/scripts/feedback-to-memory.js +0 -185
  145. package/scripts/gate-satisfy.js +0 -42
  146. package/scripts/generate-paperbanana-diagrams.sh +0 -99
  147. package/scripts/generate-pretool-hook.sh +0 -40
  148. package/scripts/github-about.js +0 -430
  149. package/scripts/github-outreach.js +0 -65
  150. package/scripts/gtm-revenue-loop.js +0 -535
  151. package/scripts/hallucination-detector.js +0 -226
  152. package/scripts/hf-papers.js +0 -317
  153. package/scripts/hook-auto-capture.sh +0 -100
  154. package/scripts/hook-stop-pr-thread-check.sh +0 -68
  155. package/scripts/hook-stop-self-score.sh +0 -51
  156. package/scripts/hook-stop-verify-deploy.sh +0 -31
  157. package/scripts/hook-verify-before-done.sh +0 -20
  158. package/scripts/managed-dpo-export.js +0 -91
  159. package/scripts/markdown-escape.js +0 -12
  160. package/scripts/marketing-experiment.js +0 -657
  161. package/scripts/memalign-recall.js +0 -111
  162. package/scripts/memory-migration.js +0 -296
  163. package/scripts/meta-policy.js +0 -190
  164. package/scripts/metered-billing.js +0 -16
  165. package/scripts/model-tier-router.js +0 -310
  166. package/scripts/money-watcher.js +0 -218
  167. package/scripts/multi-hop-recall.js +0 -240
  168. package/scripts/per-step-scoring.js +0 -163
  169. package/scripts/perplexity-marketing.js +0 -466
  170. package/scripts/pii-scanner.js +0 -153
  171. package/scripts/plan-gate.js +0 -154
  172. package/scripts/post-everywhere.js +0 -341
  173. package/scripts/post-to-x-retry.sh +0 -22
  174. package/scripts/post-to-x.js +0 -369
  175. package/scripts/pr-manager.js +0 -421
  176. package/scripts/principle-extractor.js +0 -162
  177. package/scripts/pro-features.js +0 -41
  178. package/scripts/prompt-dlp.js +0 -222
  179. package/scripts/prove-adapters.js +0 -860
  180. package/scripts/prove-attribution.js +0 -361
  181. package/scripts/prove-automation.js +0 -651
  182. package/scripts/prove-autoresearch.js +0 -304
  183. package/scripts/prove-claim-verification.js +0 -277
  184. package/scripts/prove-cloudflare-sandbox.js +0 -161
  185. package/scripts/prove-data-pipeline.js +0 -408
  186. package/scripts/prove-data-quality.js +0 -227
  187. package/scripts/prove-evolution.js +0 -352
  188. package/scripts/prove-harnesses.js +0 -287
  189. package/scripts/prove-intelligence.js +0 -257
  190. package/scripts/prove-lancedb.js +0 -425
  191. package/scripts/prove-local-intelligence.js +0 -340
  192. package/scripts/prove-loop-closure.js +0 -263
  193. package/scripts/prove-packaged-runtime.js +0 -326
  194. package/scripts/prove-predictive-insights.js +0 -355
  195. package/scripts/prove-runtime.js +0 -363
  196. package/scripts/prove-seo-gsd.js +0 -234
  197. package/scripts/prove-settings.js +0 -279
  198. package/scripts/prove-subway-upgrades.js +0 -277
  199. package/scripts/prove-tessl.js +0 -229
  200. package/scripts/prove-training-export.js +0 -325
  201. package/scripts/prove-workflow-contract.js +0 -112
  202. package/scripts/prove-xmemory.js +0 -332
  203. package/scripts/publish-decision.js +0 -159
  204. package/scripts/ralph-loop.js +0 -376
  205. package/scripts/ralph-mode-ci.js +0 -331
  206. package/scripts/reddit-dm-outreach.js +0 -192
  207. package/scripts/reddit-monitor-cron.sh +0 -26
  208. package/scripts/reminder-engine.js +0 -132
  209. package/scripts/revenue-status.js +0 -472
  210. package/scripts/rotate-stripe-webhook-secret.js +0 -314
  211. package/scripts/schedule-manager.js +0 -249
  212. package/scripts/self-healing-check.js +0 -193
  213. package/scripts/shieldcortex-memory-firewall-runner.mjs +0 -53
  214. package/scripts/skill-exporter.js +0 -260
  215. package/scripts/skill-materializer.js +0 -134
  216. package/scripts/skill-packs.js +0 -136
  217. package/scripts/skill-proposer.js +0 -99
  218. package/scripts/skill-quality-tracker.js +0 -282
  219. package/scripts/slow-loop.js +0 -72
  220. package/scripts/social-analytics/db/analytics.sqlite +0 -0
  221. package/scripts/social-analytics/db/schema.sql +0 -32
  222. package/scripts/social-analytics/digest.js +0 -256
  223. package/scripts/social-analytics/engagement-audit.js +0 -185
  224. package/scripts/social-analytics/generate-instagram-card.js +0 -97
  225. package/scripts/social-analytics/instagram-thumbgate-post.js +0 -111
  226. package/scripts/social-analytics/install-growth-automation.js +0 -114
  227. package/scripts/social-analytics/load-env.js +0 -77
  228. package/scripts/social-analytics/mcp-server.js +0 -289
  229. package/scripts/social-analytics/normalizer.js +0 -580
  230. package/scripts/social-analytics/notify.js +0 -162
  231. package/scripts/social-analytics/poll-all.js +0 -107
  232. package/scripts/social-analytics/pollers/github.js +0 -195
  233. package/scripts/social-analytics/pollers/instagram.js +0 -253
  234. package/scripts/social-analytics/pollers/linkedin.js +0 -340
  235. package/scripts/social-analytics/pollers/plausible.js +0 -245
  236. package/scripts/social-analytics/pollers/reddit.js +0 -306
  237. package/scripts/social-analytics/pollers/threads.js +0 -233
  238. package/scripts/social-analytics/pollers/tiktok.js +0 -203
  239. package/scripts/social-analytics/pollers/x.js +0 -227
  240. package/scripts/social-analytics/pollers/youtube.js +0 -304
  241. package/scripts/social-analytics/pollers/zernio.js +0 -183
  242. package/scripts/social-analytics/publish-instagram-thumbgate.js +0 -104
  243. package/scripts/social-analytics/publish-thumbgate-launch.js +0 -322
  244. package/scripts/social-analytics/publishers/devto.js +0 -122
  245. package/scripts/social-analytics/publishers/instagram.js +0 -317
  246. package/scripts/social-analytics/publishers/linkedin.js +0 -294
  247. package/scripts/social-analytics/publishers/reddit.js +0 -385
  248. package/scripts/social-analytics/publishers/threads.js +0 -275
  249. package/scripts/social-analytics/publishers/tiktok.js +0 -217
  250. package/scripts/social-analytics/publishers/x.js +0 -259
  251. package/scripts/social-analytics/publishers/youtube.js +0 -223
  252. package/scripts/social-analytics/publishers/zernio.js +0 -539
  253. package/scripts/social-analytics/reconcile-thumbgate-campaign.js +0 -165
  254. package/scripts/social-analytics/run-digest.js +0 -34
  255. package/scripts/social-analytics/schedule-thumbgate-campaign.js +0 -275
  256. package/scripts/social-analytics/store.js +0 -455
  257. package/scripts/social-analytics/sync-launch-assets.js +0 -185
  258. package/scripts/social-analytics/utm.js +0 -143
  259. package/scripts/social-pipeline.js +0 -2626
  260. package/scripts/social-post-hourly.js +0 -228
  261. package/scripts/social-quality-gate.js +0 -134
  262. package/scripts/social-reply-monitor.js +0 -592
  263. package/scripts/status-dashboard.js +0 -155
  264. package/scripts/stripe-live-status.js +0 -115
  265. package/scripts/subagent-profiles.js +0 -79
  266. package/scripts/sync-branch-protection.js +0 -340
  267. package/scripts/sync-gh-secrets-from-env.sh +0 -70
  268. package/scripts/sync-github-about.js +0 -55
  269. package/scripts/sync-version.js +0 -479
  270. package/scripts/synthetic-dpo.js +0 -234
  271. package/scripts/tessl-export.js +0 -369
  272. package/scripts/test-coverage.js +0 -128
  273. package/scripts/thumbgate_session_start.sh +0 -32
  274. package/scripts/train_from_feedback.py +0 -929
  275. package/scripts/validate-feedback.js +0 -581
  276. package/scripts/verify-obsidian-setup.sh +0 -269
  277. package/scripts/verify-run.js +0 -269
  278. package/scripts/weekly-auto-post.js +0 -124
  279. package/scripts/x-autonomous-marketing.js +0 -139
@@ -1,30 +0,0 @@
1
- ---
2
- description: Before risky tool calls (git push, rm -rf, npm publish, deploy), check prevention rules via the thumbgate MCP server. If a rule matches, STOP and explain why.
3
- alwaysApply: true
4
- ---
5
-
6
- # Pre-Action Gates
7
-
8
- Before executing any of these risky actions, query the `prevention_rules` MCP tool to check for matching prevention rules:
9
-
10
- - `git push` (especially force push)
11
- - `rm -rf` or recursive file deletion
12
- - `npm publish`
13
- - `deploy` commands (any deployment target)
14
- - Database migration commands
15
- - Secret or credential changes
16
-
17
- ## Enforcement flow
18
-
19
- 1. Extract the command or action about to be executed.
20
- 2. Call `prevention_rules` with the action description to check for matching rules.
21
- 3. If a rule matches:
22
- - **STOP** the action immediately.
23
- - Display the matched rule's description and corrective action.
24
- - Ask the user to confirm before proceeding.
25
- 4. If no rules match, proceed normally.
26
-
27
- ## After a blocked action
28
-
29
- - Suggest the corrective action from the matched prevention rule.
30
- - Offer to capture feedback if the block was incorrect (false positive).
@@ -1,28 +0,0 @@
1
- ---
2
- description: At session start, recall past context. At session end, hand off state for next session.
3
- alwaysApply: false
4
- ---
5
-
6
- # Session Continuity
7
-
8
- Maintain context across coding sessions using the ThumbGate memory system.
9
-
10
- ## Session start
11
-
12
- 1. Call the `recall` MCP tool to retrieve:
13
- - Recent prevention rules relevant to the current project
14
- - Past failure patterns and corrective actions
15
- - Active context packs from previous sessions
16
- 2. Summarize recalled context before starting work.
17
-
18
- ## Session end
19
-
20
- 1. Capture any new feedback from the session using `capture_feedback`.
21
- 2. Note any unfinished work or pending decisions as context for the next session.
22
- 3. If new failure patterns emerged, flag them for potential prevention rule promotion.
23
-
24
- ## Between sessions
25
-
26
- - Prevention rules persist automatically via the MCP server.
27
- - Lessons promoted during the session are available in future recalls.
28
- - Context packs expire based on configured retention policies.
@@ -1,21 +0,0 @@
1
- #!/usr/bin/env bash
2
- # Pre-action gate check — runs before risky shell commands.
3
- # Called by hooks/hooks.json beforeShellExecution hook.
4
- # Delegates to the published ThumbGate gate-check entrypoint.
5
-
6
- set -euo pipefail
7
-
8
- INPUT=$(cat)
9
- RESULT=$(echo "$INPUT" | npx --yes --package thumbgate@latest thumbgate gate-check 2>/dev/null) || true
10
-
11
- if [ -z "$RESULT" ]; then
12
- exit 0
13
- fi
14
-
15
- echo "$RESULT"
16
-
17
- if echo "$RESULT" | grep -q '"permissionDecision":\s*"deny"'; then
18
- exit 2
19
- fi
20
-
21
- exit 0
@@ -1,48 +0,0 @@
1
- ---
2
- name: capture-feedback
3
- description: Capture structured thumbs up/down feedback with context, history-aware lesson distillation, tags, and optional rubric scores after completing a task.
4
- ---
5
-
6
- # Capture Feedback
7
-
8
- Record structured feedback after completing a task or encountering an issue.
9
-
10
- ## When to use
11
-
12
- - After completing a coding task (positive or negative outcome)
13
- - When a tool call produces unexpected results
14
- - After a test failure or deployment issue
15
- - When the user explicitly wants to record feedback
16
-
17
- ## How it works
18
-
19
- Use the `capture_feedback` MCP tool with:
20
-
21
- - **signal** — `"thumbs_up"` or `"thumbs_down"`
22
- - **context** — Description of what happened and why when the user already said it clearly
23
- - **tags** — Array of relevant tags for categorization (e.g., `["test-failure", "refactor"]`)
24
- - **chatHistory** — Up to 8 prior recorded entries plus the failed tool call when the thumbs-down signal is vague and the lesson must be distilled from recent context
25
- - **relatedFeedbackId** — Use when the user adds clarifying detail later and it should refine the existing feedback event
26
- - **rubric_scores** — Optional object with structured quality scores
27
-
28
- ## Example
29
-
30
- ```
31
- Capture feedback: thumbs_down for the failed database migration.
32
- Context: Migration script dropped the wrong index, causing query timeouts.
33
- Tags: database, migration, production-incident
34
- ```
35
-
36
- ## Vague signal recovery
37
-
38
- If the user only says `thumbs_down`, `wrong`, `correct`, or `this failed`, do not stop there. Call `capture_feedback` with:
39
-
40
- - the signal
41
- - any minimal context the user already gave
42
- - `chatHistory` containing up to 8 prior recorded entries from the current correction thread
43
- - the failed tool call or command when available
44
- - `relatedFeedbackId` if the user is clarifying an already-open 60-second follow-up session
45
-
46
- That lets ThumbGate propose `whatWentWrong`, `whatToChange`, and a candidate rule automatically.
47
-
48
- Feedback feeds into the prevention rule promotion pipeline. Repeated failures with the same pattern are automatically promoted into enforceable prevention rules.
@@ -1,31 +0,0 @@
1
- ---
2
- name: prevention-rules
3
- description: Generate and review prevention rules auto-promoted from repeated failure patterns.
4
- ---
5
-
6
- # Prevention Rules
7
-
8
- Manage prevention rules that are auto-generated from repeated failure patterns.
9
-
10
- ## When to use
11
-
12
- - Reviewing current active prevention rules for the project
13
- - Checking if a specific action is blocked by a prevention rule
14
- - Understanding why an action was blocked
15
- - Generating new prevention rules from observed patterns
16
-
17
- ## How it works
18
-
19
- Use the `prevention_rules` MCP tool to:
20
-
21
- 1. **List rules** — View all active prevention rules with their match patterns and corrective actions.
22
- 2. **Check rules** — Test if a specific action matches any prevention rule before execution.
23
- 3. **Review rule history** — See which feedback events led to a rule's promotion.
24
-
25
- ## Example
26
-
27
- ```
28
- Check prevention rules for "npm publish without running tests" to see if this action is blocked.
29
- ```
30
-
31
- Prevention rules are auto-promoted when the same failure pattern appears multiple times in captured feedback. Each rule includes the original failure context and a corrective action.
@@ -1,30 +0,0 @@
1
- ---
2
- name: recall-context
3
- description: Recall relevant past failures, prevention rules, and context packs before starting a coding task.
4
- ---
5
-
6
- # Recall Context
7
-
8
- Retrieve relevant historical context before beginning work on a coding task.
9
-
10
- ## When to use
11
-
12
- - Starting a new coding task or feature
13
- - Before making changes to code that has failed before
14
- - Resuming work from a previous session
15
-
16
- ## How it works
17
-
18
- Use the `recall` MCP tool to retrieve:
19
-
20
- 1. **Prevention rules** — Rules auto-promoted from repeated failure patterns that apply to the current task.
21
- 2. **Past failures** — Specific failure events with context, tags, and corrective actions.
22
- 3. **Context packs** — Bundled project context from previous sessions.
23
-
24
- ## Example
25
-
26
- ```
27
- Use the recall MCP tool to check for known issues with the authentication module before refactoring.
28
- ```
29
-
30
- The tool returns structured context that helps avoid repeating past mistakes and surfaces corrective actions from promoted lessons.
@@ -1,33 +0,0 @@
1
- ---
2
- name: search-lessons
3
- description: Search promoted lessons for corrective actions, lifecycle state, linked rules, and linked gates.
4
- ---
5
-
6
- # Search Lessons
7
-
8
- Search the promoted lessons database for corrective actions and guidance.
9
-
10
- ## When to use
11
-
12
- - Looking for corrective actions for a specific failure pattern
13
- - Checking if a known lesson applies to the current task
14
- - Reviewing lifecycle state of lessons (active, archived, superseded)
15
- - Finding linked prevention rules and gates for a topic
16
-
17
- ## How it works
18
-
19
- Use the `search_lessons` MCP tool with a query string. The tool searches across:
20
-
21
- 1. **Lesson descriptions** — What happened and why
22
- 2. **Corrective actions** — Specific steps to prevent recurrence
23
- 3. **Linked rules** — Prevention rules generated from the lesson
24
- 4. **Linked gates** — Pre-action gates that enforce the lesson
25
- 5. **Lifecycle state** — Whether the lesson is active, archived, or superseded
26
-
27
- ## Example
28
-
29
- ```
30
- Search lessons for "force push" to find corrective actions and prevention rules related to force pushing.
31
- ```
32
-
33
- Results include the full lesson context, any linked enforcement rules, and the current lifecycle state.
@@ -1,92 +0,0 @@
1
- # Gemini: ThumbGate Function Declarations Install
2
-
3
- Import the ThumbGate function declarations into your Gemini agent in under 60 seconds.
4
-
5
- ## One-Command Install (Node.js)
6
-
7
- ```bash
8
- # Copy declarations to your project
9
- cp adapters/gemini/function-declarations.json .gemini/thumbgate-tools.json
10
- ```
11
-
12
- ## Import in Your Agent Code
13
-
14
- ```javascript
15
- const fs = require('fs');
16
-
17
- // Load ThumbGate tool declarations
18
- const thumbgateTools = JSON.parse(
19
- fs.readFileSync('adapters/gemini/function-declarations.json', 'utf8')
20
- );
21
-
22
- // Pass to Gemini SDK
23
- const model = genAI.getGenerativeModel({
24
- model: 'gemini-pro',
25
- tools: [{ functionDeclarations: thumbgateTools.tools }],
26
- });
27
- ```
28
-
29
- ## Available Functions
30
-
31
- | Function | Description |
32
- |---|---|
33
- | `capture_memory_feedback` | Capture success/failure feedback — POST `/v1/feedback/capture` |
34
- | `get_reliability_rules` | Retrieve active prevention rules — POST `/v1/feedback/rules` |
35
- | `get_business_metrics` | Retrieve high-level metrics — GET `/v1/billing/summary` |
36
- | `describe_reliability_entity` | Get canonical definitions — GET `/v1/semantic/describe` |
37
-
38
- ## Point to Your API
39
-
40
- Set the base URL in your Gemini function handler:
41
-
42
- ```javascript
43
- const THUMBGATE_API_URL = process.env.THUMBGATE_API_URL || 'http://localhost:3000';
44
- const THUMBGATE_API_KEY = process.env.THUMBGATE_API_KEY;
45
-
46
- async function callThumbGateTool(name, params) {
47
- const endpoints = {
48
- capture_memory_feedback: { method: 'POST', path: '/v1/feedback/capture' },
49
- get_reliability_rules: { method: 'POST', path: '/v1/feedback/rules' },
50
- get_business_metrics: { method: 'GET', path: '/v1/billing/summary' },
51
- describe_reliability_entity: { method: 'GET', path: '/v1/semantic/describe' },
52
- plan_intent: { method: 'POST', path: '/v1/intents/plan' },
53
- };
54
- const { method, path } = endpoints[name];
55
-
56
- const url = new URL(`${THUMBGATE_API_URL}${path}`);
57
- if (method === 'GET' && params) {
58
- Object.keys(params).forEach(key => url.searchParams.append(key, params[key]));
59
- }
60
-
61
- const res = await fetch(url.toString(), {
62
- method,
63
- headers: { Authorization: `Bearer ${THUMBGATE_API_KEY}`, 'Content-Type': 'application/json' },
64
- body: method === 'POST' ? JSON.stringify(params) : undefined,
65
- });
66
- return res.json();
67
- }
68
- ```
69
-
70
- ## Requirements
71
-
72
- - Google Gemini SDK (`@google/generative-ai`)
73
- - Node.js 18+ or Python 3.9+
74
- - ThumbGate API running (local or hosted)
75
-
76
- ## Branding Alignment (Google Cloud)
77
-
78
- When setting up your Google Cloud Project for this extension:
79
- 1. **Project Name:** Use `mcp-reliability-gateway` or similar. Avoid placeholder names.
80
- 2. **OAuth Consent Screen:**
81
- - **App Name:** Enter `MCP Reliability Gateway`.
82
- - **Support Email:** Use your professional email.
83
- - **Logo:** Use the provided asset in `docs/logo-400x400.png`.
84
-
85
- This ensures that the "App Asking for Consent" matches the product name, providing a professional experience for the CEO and users.
86
-
87
- ## Verify
88
-
89
- ```bash
90
- node -e "const t = require('./adapters/gemini/function-declarations.json'); console.log('Tools:', t.tools.map(x=>x.name))"
91
- # Expected: Tools: [ 'capture_memory_feedback', 'get_reliability_rules', 'get_business_metrics', 'describe_reliability_entity', ... ]
92
- ```
@@ -1,14 +0,0 @@
1
- You are integrated with the MCP Reliability Gateway. Your goal is to ensure 100% reliable execution by following project-specific rules and business metrics.
2
-
3
- When the user gives success/failure signal (thumbs up/down):
4
- - call `capture_memory_feedback` with rich context.
5
- - include tags for entities involved (e.g. 'entity:Revenue', 'entity:Customer').
6
- - do not accept vague feedback without asking for detail.
7
-
8
- Before starting a significant task:
9
- - call `get_reliability_rules` to retrieve prevention rules derived from past mistakes.
10
- - respect these rules as foundational constraints.
11
-
12
- When reasoning about the business:
13
- - use `get_business_metrics` for hard revenue and conversion data.
14
- - use `describe_reliability_entity` to understand how business concepts are defined.
@@ -1,45 +0,0 @@
1
- {
2
- "tools": [
3
- {
4
- "name": "capture_memory_feedback",
5
- "description": "Capture success/failure feedback to harden future workflows and prevent repeated mistakes.",
6
- "input_schema": {
7
- "type": "object",
8
- "properties": {
9
- "signal": { "type": "string", "enum": ["up", "down"], "description": "Success (up) or failure (down) signal" },
10
- "context": { "type": "string", "description": "Specific detail about what was achieved or what went wrong" },
11
- "what_went_wrong": { "type": "string" },
12
- "what_to_change": { "type": "string" },
13
- "what_worked": { "type": "string" },
14
- "tags": { "type": "array", "items": { "type": "string" }, "description": "Keywords like 'revenue', 'deployment', 'refactor'" }
15
- },
16
- "required": ["signal", "context"]
17
- }
18
- },
19
- {
20
- "name": "get_reliability_rules",
21
- "description": "Retrieve active prevention rules and success patterns to ensure high-quality task execution."
22
- },
23
- {
24
- "name": "get_business_metrics",
25
- "description": "Retrieve canonical business metrics (Revenue, Conversion, Customers) from the Reliability Gateway.",
26
- "input_schema": {
27
- "type": "object",
28
- "properties": {
29
- "window": { "type": "string", "enum": ["today", "7d", "30d", "lifetime"], "default": "30d" }
30
- }
31
- }
32
- },
33
- {
34
- "name": "describe_reliability_entity",
35
- "description": "Get the definition and state of a business entity (Customer, Revenue, Funnel).",
36
- "input_schema": {
37
- "type": "object",
38
- "properties": {
39
- "type": { "type": "string", "enum": ["Customer", "Revenue", "Funnel"] }
40
- },
41
- "required": ["type"]
42
- }
43
- }
44
- ]
45
- }
@@ -1,57 +0,0 @@
1
- # OpenCode: ThumbGate MCP Profile Install
2
-
3
- This repo already ships a project-scoped `opencode.json` for local work inside the source tree.
4
-
5
- If you want the same MCP server in another OpenCode project or in your global OpenCode config, use the portable adapter profile below.
6
-
7
- ## One-Command Install
8
-
9
- Create a global OpenCode config if you do not have one yet:
10
-
11
- ```bash
12
- mkdir -p ~/.config/opencode
13
- cp adapters/opencode/opencode.json ~/.config/opencode/opencode.json
14
- ```
15
-
16
- If you already have `~/.config/opencode/opencode.json`, merge in the `mcp.thumbgate` block from `adapters/opencode/opencode.json` instead of overwriting your config.
17
-
18
- ## What Gets Added
19
-
20
- The portable profile adds this MCP server entry:
21
-
22
- ```json
23
- {
24
- "$schema": "https://opencode.ai/config.json",
25
- "mcp": {
26
- "thumbgate": {
27
- "type": "local",
28
- "command": ["npx", "--yes", "--package", "thumbgate@1.4.0", "thumbgate", "serve"],
29
- "enabled": true
30
- }
31
- }
32
- }
33
- ```
34
-
35
- ## Verify
36
-
37
- Run OpenCode in any project and confirm the `thumbgate` MCP server is available:
38
-
39
- ```bash
40
- opencode
41
- ```
42
-
43
- For this repository specifically, the committed `opencode.json` also enables:
44
-
45
- - repo-local worktree-safe permissions
46
- - a read-only `thumbgate-review` subagent in `.opencode/agents/thumbgate-review.md`
47
- - concise workflow instructions in `.opencode/instructions/thumbgate-workflow.md`
48
-
49
- ## Requirements
50
-
51
- - OpenCode with MCP support
52
- - Node.js 18+ in PATH
53
- - `npx` available in PATH
54
-
55
- ## Uninstall
56
-
57
- Remove the `mcp.thumbgate` entry from your OpenCode config.
Binary file