UGC Reactions from Real Creators
Real creator library videos at $11 and images at $8. Custom production from $25/video with a $250 minimum. Commercial licensing included.
Are you in the AI's memory? Kioku asks ChatGPT, Claude, Gemini and Perplexity the questions your buyers ask. See how often you're recommended, where you rank, and which sources they cite.
MarketingTypeScript · CSSGitHub @114winddOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
No updates detected yet. GitHub releases will appear here.
The maker's introduction consists of the line above. Read the repository README for more details. Repository README ↗
Loading the full README.
Read the full README ↗Are you in the AI's memory? Kioku (Japanese for "memory") shows whether AI assistants recommend your product. Tell Pip (the bird who runs the checks) which brand to check and, if you like, what to focus on ("BNB Chain, more specifically RWA, trading and AI"). Pip drafts the brief (what the brand is, its category, audience, website, rivals and focus areas) for you to confirm or correct in plain words. Pick how many questions to ask, from 1 to 100. Pip shows what the check will cost and how long it will take, and once you say go, asks ChatGPT, Claude, Gemini and Perplexity the questions your buyers ask, streams each answer into the chat as it lands, and builds a report:
It works with no API keys. Any assistant without a key answers with realistic demo text and fictional rivals, so you can try the whole flow straight away. Add keys to ask the real assistants.
Requires Node.js 20+ and pnpm.
pnpm install
pnpm dev
Open http://localhost:47321. The sample report lives at /report/demo.
Locally you don't need Redis: run state, the daily budget and rate limits are kept in the server process and reset when it restarts. To use a real Redis locally (for example the one your Vercel project uses), put its REST URL and token in .env.local as UPSTASH_REDIS_REST_URL and UPSTASH_REDIS_REST_TOKEN, or pull them with vercel env pull .env.local.
Copy .env.example to .env.local and add any keys you have, then restart pnpm dev. Each assistant switches to live answers on its own. The rest stay in demo mode, and the report labels which is which.
| Assistant | Key | Optional settings |
|---|---|---|
| ChatGPT | OPENAI_API_KEY | OPENAI_MODEL (default gpt-4.1-mini), OPENAI_WEB_SEARCH |
| Claude | ANTHROPIC_API_KEY | ANTHROPIC_MODEL (default claude-haiku-4-5), ANTHROPIC_WEB_SEARCH |
| Gemini | GEMINI_API_KEY (or GOOGLE_API_KEY) | GEMINI_MODEL (default gemini-2.5-flash), GEMINI_WEB_SEARCH |
| Perplexity | PERPLEXITY_API_KEY | PERPLEXITY_MODEL (default sonar) |
With direct keys, web search is off by default for ChatGPT, Claude and Gemini, and Perplexity always searches. Set OPENAI_WEB_SEARCH, ANTHROPIC_WEB_SEARCH or GEMINI_WEB_SEARCH to true to get cited sources, at a higher cost per check. OpenAI web search needs a search model such as gpt-4o-mini-search-preview, and Anthropic web search must be enabled for your organisation. Set SOV_FORCE_MOCK=true to ignore all keys.
Set OPENROUTER_API_KEY and every assistant without its own key runs through OpenRouter. A direct key always wins for that assistant.
| Assistant | OpenRouter model (default) | Override |
|---|---|---|
| ChatGPT | openai/gpt-6-luna | OPENROUTER_CHATGPT_MODEL |
| Claude | anthropic/claude-haiku-5.5 | OPENROUTER_CLAUDE_MODEL |
| Gemini | google/gemini-3.1-flash-lite | OPENROUTER_GEMINI_MODEL |
| Perplexity | perplexity/sonar | OPENROUTER_PERPLEXITY_MODEL |
Through OpenRouter, ChatGPT, Claude and Gemini search the web by default, like the real assistants. OpenRouter's web plugin uses each provider's own search, and the report reads the sources from the answer's URL citations. Set OPENAI_WEB_SEARCH, ANTHROPIC_WEB_SEARCH or GEMINI_WEB_SEARCH to false to turn it off for that assistant. Search costs extra: Gemini's native search is the priciest of the three. Perplexity always searches on its own. OPENROUTER_BASE_URL points everything at another OpenAI-compatible gateway.
Keys stay on the server. The browser only learns whether each assistant is live, and which model it uses.
With a key, Pip starts by working out which brand you mean (POST /api/intake/brief). A small, fast model drafts the whole brief from what it already knows: what the brand is, its category, audience, websites (up to three it's sure of), up to five rivals, and the focus areas you named, phrased so they make sense for that brand. Pip asks "Do you mean BNB Chain, the Layer 1 blockchain behind the BNB token?" and shows the brief as a card. This takes about a second and a half.
This is the beginning of the README. Read the rest at the original. Read the full README ↗