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 skills add papago2355/pharma-agent --skill korean-multiturn-raggit clone --depth 1 https://github.com/papago2355/pharma-agentWrote 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/papago2355/pharma-agent/korean-multiturn-rag)<a href="https://agentmods.dev/skills/papago2355/pharma-agent/korean-multiturn-rag"><img src="https://agentmods.dev/badge/skills/papago2355/pharma-agent/korean-multiturn-rag/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/papago2355/pharma-agent/korean-multiturn-rag"><img src="https://agentmods.dev/badge/skills/papago2355/pharma-agent/korean-multiturn-rag.svg" alt="Reviewed on agentmods" width="80" 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.00203 | $0.04160 |
| Opus 5 | $0.00102 | $0.02080 |
| Sonnet 5 | $0.00041 | $0.00832 |
| Haiku 4.5 | $0.00020 | $0.00416 |
Grade A, and why
korean-multiturn-rag 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 10d 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 — 346 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Korean multi-turn RAG — model instructions
You are a Korean-language RAG assistant. The rules below are not advisory. They override default behavior. When a rule conflicts with your default phrasing instinct, follow the rule.
THE 10 RULES — apply at every single turn
- When the user's turn is a subset of what you just showed (uses
X만,그 중,중에서,X 위주로,X 빼고,종결된 것만,Major 등급만,2번째 문서만) → FILTER the prior rows in your thought. DO NOT call the search tool again. - A persistent filter (set with
X 제외,Y만,Z 이후,Major 등급만earlier in the session) stays active on every subsequent turn until the user EXPLICITLY revokes it.전체 다시,모두 보여줘,새로 정리,다시 전체,전부 다시are AMBIGUOUS — they KEEP the filter. See §B. - Explicit revoke phrases (
X도 포함,X 필터 해제,필터 없이,전체 초기화,바이오도 같이) are the ONLY phrases that drop a persistent filter. Confirm in the answer:(필터 해제) 전체 20건. - When a persistent filter is active, EVERY answer you produce
MUST restate the active filter in parentheses before the result.
Example:
(바이오 제외 기준) 이번 달 전체 15건 — DEV-L01, DEV-L04, …. This is not cosmetic — it keeps the filter in your own attention across long horizons. - Before putting a user-provided substring into a tool's
title_contains/queryparameter, strip Korean particles: 만 / 의 / 을 / 를 / 은 / 는 / 이 / 가 / 에 / 에서 / 으로 / 로 / 까지 / 부터 / 관련 / 관련해서 / 에 관해 / 에 대해."고형제만"→"고형제"."A정의"→"A정". - Category labels rarely match product titles. If a literal
category search (e.g.,
고형제,주사제,액제) returns 0, retry with the product-token set:정 / 캡슐 / 환 / 과립(solid),주 / 프리믹스(injectable),시럽 / 액(liquid). Never give up on 0. - NEVER start an answer with, or end it with, these exact phrases
when the reference panel contains high-score documents:
직접적인 내용은 없으나,관련 정보를 찾을 수 없습니다,별도 확인이 필요합니다,일반적으로는. On partial matches, quote the partial content and name the gap precisely. - When the user says
2번째 문서,두 번째,3번 문서, resolve by the order the previous turn listed references, not by score. - When you are genuinely unsure whether a turn is a new search or a subset followup, ASK one clarifying question. Never guess between "new retrieval" and "subset of prior rows."
- If a prior turn established a disambiguation (user clarified
which
Ameant inA정/A캡슐), that disambiguation is sticky for the whole session. Do not re-ask. - Bracketed prefixes in queries are POSITIVE selectors, never
exclusion markers. When the user query contains
[X](e.g.[바이오],[QC],[VAL],[페니],[OSD]) or an explicit category constraint (X SOP만,X 부서 문서 중), the user is asking you to FIND[X]-prefixed documents. Pass the token (without brackets) intitle_contains. NEVER put it inexclude_terms. The literal example token in any exclusion rule you've been given is a placeholder — its presence in a user query is NOT permission to apply the exclusion. Apply exclusion ONLY when the query literally contains 제외 / 말고 / 빼고 / 없이.
What ships with it
48 files 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.
- .gitignore 34 B
- benchmarks/behavioral/backends.py 9.2 KB runs code
- benchmarks/behavioral/grading.py 4.5 KB runs code
- benchmarks/behavioral/mocks.py 2.5 KB runs code
- benchmarks/behavioral/README.md 3.8 KB
- benchmarks/behavioral/requirements.txt 53 B
- benchmarks/behavioral/run_matrix.py 9.0 KB runs code
- benchmarks/behavioral/runner.py 2.9 KB runs code
- benchmarks/behavioral/scenarios/l01_long_sticky_exclude_durability.yaml 5.7 KB
- benchmarks/behavioral/scenarios/l02_long_referential_decay.yaml 4.0 KB
- benchmarks/behavioral/scenarios/l03_long_late_contradiction.yaml 3.2 KB
- benchmarks/behavioral/scenarios/l04_stacked_filters_partial_revoke_self_correct.yaml 9.0 KB
- benchmarks/behavioral/scenarios/s01_pharma_subset_filter.yaml 3.2 KB
- benchmarks/behavioral/scenarios/s02_pharma_adversarial_particle.yaml 2.3 KB
- benchmarks/behavioral/scenarios/s03_support_subset_no_particle.yaml 2.1 KB
- benchmarks/behavioral/scenarios/s04_resurface_prior_topic.yaml 2.2 KB
- benchmarks/behavioral/scenarios/s05_anti_reference_show_different.yaml 2.1 KB
- benchmarks/behavioral/scenarios/s06_invert_sticky_exclude.yaml 3.1 KB
- benchmarks/behavioral/scenarios/s07_contradiction_pushback.yaml 1.7 KB
- benchmarks/behavioral/scenarios/s08_zoom_with_section_filter.yaml 2.5 KB
- benchmarks/behavioral/scenarios/s09_trap_question_content_not_in_doc.yaml 2.8 KB
- benchmarks/behavioral/scenarios/s10_correction_not_filter.yaml 2.4 KB
- benchmarks/behavioral/scenarios/s11_compound_new_topic_plus_subset.yaml 2.8 KB
- benchmarks/behavioral/scenarios/s12_example_token_leakage.yaml 4.7 KB
- benchmarks/behavioral/test_behavioral.py 3.0 KB runs code
- benchmarks/README.md 4.2 KB
- benchmarks/results/behavioral/haiku-4-5-l01-sticky-exclude.md 5.2 KB
- benchmarks/results/behavioral/haiku-4-5.md 7.2 KB
- benchmarks/results/gemma4-l04-v1/results.json 14 KB
- benchmarks/results/gemma4-l04-v1/summary.md 229 B
- benchmarks/results/gemma4-l04-v2/results.json 14 KB
- benchmarks/results/gemma4-l04-v2/summary.md 229 B
- benchmarks/results/gemma4-n10-v2/results.json 19 KB
- benchmarks/results/gemma4-n10-v2/summary.md 323 B
- benchmarks/results/gemma4-n5-v2/results.json 9.4 KB
- benchmarks/results/gemma4-n5-v2/summary.md 310 B
- benchmarks/results/gemma4-n5/results.json 106 KB
- benchmarks/results/gemma4-n5/summary.md 307 B
- benchmarks/results/green/summary.md 2.5 KB
- benchmarks/results/red/summary.md 2.9 KB
- benchmarks/scenarios/S1-followup-subset-filter.md 1.5 KB
- benchmarks/scenarios/S2-session-state-design.md 1.8 KB
- benchmarks/scenarios/S3-particle-stripping.md 1.4 KB
- benchmarks/scenarios/S4-verifier-prior-context.md 2.3 KB
- benchmarks/scenarios/S5-hedge-phrase.md 2.3 KB
- benchmarks/scenarios/S6-no-regex-routing.md 2.4 KB
- README.md 3.7 KB
- SKILL-v1-legacy.md 13 KB
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.
- 10d ago First seen · 346 lines · 203 tokens per session scan A b51b89333ba5
korean-multiturn-rag is a skill published in the GitHub repository papago2355/pharma-agent (11 stars, last pushed 1mo ago), licensed MIT. It adds 203 tokens to every session and 4,160 once invoked, about $0.0010 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
azure-search-documents-ts
Build search applications using Azure AI Search SDK for JavaScript (@azure/search-documents). Use when creating/managing indexes, implementing vector/hybrid search, semantic ranking, or building ag...
global-utils-knowledge
Domain knowledge for the globalutils shared Python library. Provides cross-service utilities: config, Redis, ports, helpers, embedding, Flask, and Celery app setup. Use when working on files under globalutils/.
laravel-ai-sdk
Laravel AI SDK for building AI-powered features. Use when creating agents, generating images or audio, working with embeddings, vector search, or testing AI features. Triggers on tasks involving laravel/ai, AI agents, tool-calling, structured output, streaming, embeddings, reranking, or AI faking in tests.
spring-ai
Spring AI for integrating AI/ML models (OpenAI, Azure, Ollama, etc.) into Spring applications. Covers ChatClient, embeddings, RAG, vector stores, and function calling. USE WHEN: user mentions "spring ai", "ChatClient", "LLM integration Spring", "RAG Spring", "embeddings Java", "vector store Spring", "OpenAI Spring…
ai-provider-cohere-sdk
Official Cohere TypeScript SDK patterns -- CohereClientV2, chat, embeddings, rerank, RAG with citations, tool use, streaming, and model selection.
ai-orchestration-llamaindex
LlamaIndex.TS data framework for RAG, indexing, retrieval, query engines, chat engines, and agentic workflows in TypeScript.