← back to Sku Check Skill
sku-check: log Gemini sku-image-analysis usage to cost-tracker
64a2269cc3e38ef2491f9d5f190a7e327ef4b879 · 2026-05-12 17:52:37 -0700 · Steve
Files touched
Diff
commit 64a2269cc3e38ef2491f9d5f190a7e327ef4b879
Author: Steve <steve@designerwallcoverings.com>
Date: Tue May 12 17:52:37 2026 -0700
sku-check: log Gemini sku-image-analysis usage to cost-tracker
---
server.js | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/server.js b/server.js
index 2597b9f..c5750cf 100644
--- a/server.js
+++ b/server.js
@@ -25,7 +25,7 @@ const SHOPIFY_HEADERS = {
const SLACK_WEBHOOK = 'https://hooks.slack.com/services/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';
-const GEMINI_API_KEY = 'AIzaSyAO0rLKwtJUKcf3zVmKstBS4udct4QejMo';
+const GEMINI_API_KEY = '${GEMINI_API_KEY}';
const GEMINI_ENDPOINT = 'https://generativelanguage.googleapis.com/v1beta/models/gemini-2.0-flash:generateContent';
// Brewster / York trade portal credentials (same parent company, shared login)
@@ -185,6 +185,10 @@ Return ONLY valid JSON:
});
const geminiData = await geminiResp.json();
+ try {
+ const { logGemini } = require(require('path').join(require('os').homedir(), '.claude/skills/cost-tracker/scripts/log-gemini.js'));
+ logGemini(geminiData, { app: 'sku-check-skill', model: 'gemini-2.0-flash', note: 'sku-image-analysis' });
+ } catch {}
const text = geminiData?.candidates?.[0]?.content?.parts?.[0]?.text || '';
const jsonMatch = text.match(/\{[\s\S]*\}/);
if (!jsonMatch) return { analysis: null, message: 'Gemini returned no JSON' };
← 5f2d884 initial scaffold (gitify-all 2026-05-06)
·
back to Sku Check Skill
·
snapshot: 1 file(s) changed, ~1 modified 460f702 →