Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add skills/jiushiwon/wg-skills/python-kafka-module-skillnpx skills add jiushiwon/wg-skills --skill python-kafka-module-skillgit clone --depth 1 https://github.com/jiushiwon/wg-skillsWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/jiushiwon/wg-skills/python-kafka-module-skill)<a href="https://agentmods.dev/skills/jiushiwon/wg-skills/python-kafka-module-skill"><img src="https://agentmods.dev/badge/skills/jiushiwon/wg-skills/python-kafka-module-skill.svg" alt="Measured on agentmods" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00106 | $0.02139 |
| Opus 5 | $0.00053 | $0.01069 |
| Sonnet 5 | $0.00021 | $0.00428 |
| Haiku 4.5 | $0.00011 | $0.00214 |
Grade A, and why
python-kafka-module-skill scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 6d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 325 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Python Kafka Module Skill
面向已有 FastAPI 项目的开发者,快速集成 Kafka 能力。
能力清单
| 能力 | 说明 |
|---|---|
| 生产者 | 同步/异步发送消息、消息分区、消息key |
| 消费者 | 消费监听、消息重试、消费者组 |
| 消息序列化 | JSON |
| 事务消息 | Kafka 事务 |
| 错误处理 | 消息发送/消费错误处理 |
触发场景
用户说"帮我加 Kafka"或"集成 Kafka"时触发。
依赖配置
pip install aiokafka
默认方法封装
1. 生产者
# kafka_producer.py
from aiokafka import AIOKafkaProducer, AIOKafkaConsumer
from typing import Optional, Callable, Any
import json
import logging
logger = logging.getLogger(__name__)
class KafkaProducer:
def __init__(self, bootstrap_servers: str = "localhost:9092"):
self.bootstrap_servers = bootstrap_servers
self._producer: Optional[AIOKafkaProducer] = None
async def start(self):
"""启动生产者"""
self._producer = AIOKafkaProducer(
bootstrap_servers=self.bootstrap_servers,
value_serializer=lambda v: json.dumps(v, ensure_ascii=False).encode('utf-8'),
key_serializer=lambda k: k.encode('utf-8') if k else None
)
await self._producer.start()
logger.info("Kafka 生产者已启动")
async def stop(self):
"""停止生产者"""
if self._producer:
await self._producer.stop()
logger.info("Kafka 生产者已停止")
async def send(self, topic: str, value: Any, key: Optional[str] = None) -> str:
"""发送消息(同步)"""
if not self._producer:
raise RuntimeError("生产者未启动")
future = await self._producer.send_and_wait(topic, value, key=key)
return f"{future.topic}-{future.partition}-{future.offset}"
async def send_async(self, topic: str, value: Any, key: Optional[str] = None, callback: Optional[Callable] = None):
"""发送消息(异步)"""
if not self._producer:
raise RuntimeError("生产者未启动")
await self._producer.send(topic, value, key=key)
if callback:
# 注册回调
pass
async def send_json(self, topic: str, data: dict, key: Optional[str] = None):
"""发送 JSON 消息"""
return await self.send(topic, data, key)
async def send_messages(self, topic: str, messages: list):
"""批量发送消息"""
if not self._producer:
raise RuntimeError("生产者未启动")
for msg in messages:
await self._producer.send(topic, msg)
# 全局实例
producer = KafkaProducer()
What ships with it
1 file beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 6d ago First seen · 325 lines · 106 tokens per session scan A 5e95567f8c19
python-kafka-module-skill is a skill published in the GitHub repository jiushiwon/wg-skills (88 stars, last pushed 4d ago), licensed Apache-2.0. It adds 106 tokens to every session and 2,139 once invoked, about $0.0005 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
matlab
Build, review, migrate, and safely plan MATLAB or GNU Octave numerical workflows, including arrays, tabular/time data, tests, projects, graphics, MAT files, and explicit Python interoperability.
pennylane
Hardware-agnostic quantum ML framework with automatic differentiation. Use when training quantum circuits via gradients, building hybrid quantum-classical models, or needing device portability across IBM/Google/Rigetti/IonQ. Best for variational algorithms (VQE, QAOA), quantum neural networks, and integration with…
dd-code-generation
Use pup CLI for immediate Datadog operations or generate code for integration into applications.
rocm-kernels
Provides guidance for writing and benchmarking optimized Triton kernels for AMD GPUs (MI355X, R9700) on ROCm, targeting HuggingFace diffusers (LTX-Video, SD3, FLUX) and transformers. Core kernels: RMSNorm, RoPE 3D, GEGLU, AdaLN. Includes XCD swizzle, autotune, diffusers integration patterns, and LTX-Video pipeline…
holoscan-install-wheel
Install Holoscan SDK Python wheel via pip into a venv. Use for Python installs; not for native C++/apt or Conda installs.
typing-exclusion-worker
Python typing exclusion worker: remove assigned mypy exclusion modules in small scoped batches, fix typing issues, run validation, and produce a structured completion summary. Use when running parallel typing-debt workers or when asked to remove modules from pyproject mypy exclusion overrides.