extension-inference
Build Secure Caffeine Inference Features
Caffeine applications need LLM access without exposing provider keys or misconfiguring canister outcalls. This skill provides the supported authenticated Motoko integration pattern.
Stop for confirmation before installing.
Review the plan and obtain explicit user consent before changing files.
Install with my Agent
Copy this request to your Agent. It includes the canonical Skill page and manifest.
Review the Skillstore skill "extension-inference" from https://skillstore.io/skills/caffeinelabs-extension-inference.md and its manifest at https://skillstore.io/api/skills/caffeinelabs-extension-inference/manifest. Verify the artifact. Stop and obtain explicit user consent before installing or changing files.Your Agent should still show its plan and request any confirmation required by the security policy.
Agent-readable resources
Use these links when an AI agent, crawler, or script needs clean context instead of reading the full page.
Test it
Using "extension-inference". Add a summarization feature to my Caffeine application without asking users for an API key.
Expected outcome:
A backend integration plan using platform credentials, a router-based chat request, validated response handling, and a simple pending frontend state.
Using "extension-inference". Check whether my canister inference method is ready for production.
Expected outcome:
- Credential handling is backend-only and refreshed for each request.
- Authorization, quotas, rate limits, and prompt-size limits are required before deployment.
- The request must remain non-replicated and cycle usage should be monitored.
Using "extension-inference". Can this integration generate images and stream partial responses?
Expected outcome:
No. This host supports chat completions with complete responses, not image generation or streaming.
Security Audit
High RiskAll 59 static findings are false positives caused by Markdown code formatting, documentation links, and relative links. However, the canonical public chat endpoint lacks authorization, quotas, and rate limits, creating a high-confidence resource-abuse risk.
Confirmed security concerns (1)
Risk Factors
โ๏ธ External commands (50)
๐ Network access (2)
๐ Filesystem access (2)
Share & cite this report
Share the versioned assessment report, neutral badge, embed card, and citations. Skillstore reports evidence without deciding whether this Skill is safe.
Copy report link
https://skillstore.io/skills/caffeinelabs-extension-inference/audits/1?utm_source=security_passport&utm_medium=share&utm_campaign=versioned_reportMarkdown badge
[](https://skillstore.io/skills/caffeinelabs-extension-inference?utm_source=security_passport_badge)HTML badge
<a href="https://skillstore.io/skills/caffeinelabs-extension-inference?utm_source=security_passport_badge"><img src="https://skillstore.io/badges/skills/caffeinelabs-extension-inference/security.svg" alt="Skillstore security assessment" loading="lazy"></a>Embed card
<iframe src="https://skillstore.io/embed/skills/caffeinelabs-extension-inference.html" title="Skillstore Security Assessment" sandbox="allow-popups allow-popups-to-escape-sandbox" loading="lazy" referrerpolicy="no-referrer" width="420" height="180"></iframe>Academic citations (APA ยท BibTeX ยท CFF)
APA citation
caffeinelabs. (2026). extension-inference security audit report (audit version 1) [Author version 0.1.0]. Skillstore. https://skillstore.io/skills/caffeinelabs-extension-inference/audits/1BibTeX citation
@techreport{caffeinelabs-caffeinelabs-extension-inference-2026,
author = {caffeinelabs},
title = {extension-inference security audit report (audit version 1)},
institution = {Skillstore},
year = {2026},
number = {1},
url = {https://skillstore.io/skills/caffeinelabs-extension-inference/audits/1},
note = {Author version 0.1.0}
}CITATION.cff
cff-version: 1.2.0
message: "If you use this Skill, cite its author and this versioned security audit report."
title: "extension-inference security audit report (audit version 1)"
version: "0.1.0"
type: report
authors:
- name: "caffeinelabs"
date-released: "2026-08-29"
url: "https://skillstore.io/skills/caffeinelabs-extension-inference/audits/1"
identifiers:
- type: other
value: "skillstore:caffeinelabs-extension-inference:audit:1"
description: "Skillstore immutable audit report identifier"
Skillstore Score
Why this score Evidence Confidence: MediumWhat You Can Build
Add a Canister Chat Endpoint
Create a Motoko backend method that sends prompts through Caffeine Inference and returns validated text.
Review Inference Architecture
Check that credentials remain backend-only and requests use supported configuration, model, and replication settings.
Plan an AI Product Feature
Confirm whether chat completions meet product requirements before designing frontend states and backend interfaces.
Try These Prompts
Add a basic Caffeine Inference chat method to my Motoko canister. Use platform credentials and explain each changed file.
Integrate Caffeine Inference into this existing Motoko backend. Preserve current architecture and handle empty or missing response content.
Review this Caffeine Inference endpoint for credential exposure, replicated outcalls, unauthorized usage, cycle costs, and missing request limits.
Design a production Caffeine Inference workflow with authorization, per-principal quotas, prompt limits, usage accounting, retries, and user-facing failure states.
Best Practices
- Create configuration from the platform environment for every request and never persist its authorization data.
- Keep non-replicated outcalls enabled and use the router model for every chat completion.
- Protect paid inference methods with authorization, quotas, rate limits, and bounded prompt sizes.
Avoid
- Do not collect OpenAI keys or expose inference credentials through frontend settings, logs, queries, or actor state.
- Do not call provider endpoints directly or replace platform configuration with hand-built HTTP requests.
- Do not expose an unrestricted public inference method that allows anonymous callers to consume cycles.
Frequently Asked Questions
Do users need to provide an OpenAI API key?
Which model should requests use?
Can the frontend call the inference host directly?
Does this skill support streaming?
Which inference APIs are available?
What production controls should I add?
Developer Details
Author
caffeinelabsLicense
MIT
Author version
v0.1.0
Skillstore revision
r1
Ref
2197f31c95ebfaf5ee9b50f95c8ecb53afcd7380
Maintenance freshness
8/29/2026
Usage
0 downloads ยท 0 views
File structure
๐ SKILL.md