# Bilingual Courseware

> Bilingual course-material maintenance for university professors — default EN ⇄ 简体中文, language-pair agnostic. 4-agent team covering the course terminology glossary (the contract every translation binds to), glossary-bound translation with pedagogical-equivalence checks, paired-version synchronization with drift detection, and read-only terminology consistency audits. Triggers on: translate course…

- **Type:** Skill
- **Install:** `agentstack add skill-yujxzjcn-teaching-skills-bilingual-courseware`
- **Verified:** Yes — security-reviewed for prompt injection and unsafe behavior
- **Seller:** [YujxZJCN](https://agentstack.voostack.com/s/yujxzjcn)
- **Installs:** 0
- **Category:** [Agent Skills](https://agentstack.voostack.com/c/agent-skills)
- **Latest version:** 0.1.0
- **License:** MIT
- **Upstream author:** [YujxZJCN](https://github.com/YujxZJCN)
- **Source:** https://github.com/YujxZJCN/teaching-skills/tree/main/bilingual-courseware

## Install

```sh
agentstack add skill-yujxzjcn-teaching-skills-bilingual-courseware
```

Requires the [AgentStack CLI](https://agentstack.voostack.com/docs/cli). Works with Claude Code, Cursor, and any MCP-compatible agent.

## About

# Bilingual Courseware — Terminology & Paired-Version Team

Maintains bilingual course materials with terminology discipline. Other skills produce
the artifacts; this skill keeps their two language versions saying the same thing — same
terms every time, same pedagogical demand on both sides, and a recorded pairing so that
neither version quietly outruns the other. Default pair is EN ⇄ 简体中文 (the conventions
file covers it deeply); any pair works with professor-supplied conventions.

> **Prime rule:** the glossary is the contract. Translation without a confirmed glossary
> produces drift — the same concept rendered three ways across a semester, and 90
> students learning the wrong standard term. Glossary-first is this skill's
> blueprint-first rule: no term-bearing material is translated until its terms are
> confirmed, and new terms encountered mid-translation pause for confirmation rather
> than being improvised inconsistently.

## Quick Start

```
Build a terminology glossary for my machine learning course
Translate my syllabus into Chinese — the English version is the original
把这门课的教学大纲翻译成英文，专业术语要统一
I updated the English syllabus to v2 — bring the Chinese version up to date
检查我所有课件里的术语是否一致
Check whether my slides and exam use the glossary terms consistently
```

## Modes

| Mode | Trigger intent | Output |
|------|---------------|--------|
| `glossary` | "Build/extend a glossary", new course going bilingual, new unit's terms, 术语表 | Course terminology glossary: candidate terms extracted from course materials, translations proposed with authority notes, professor confirms each entry; maintained artifact, versioned |
| `translate` | "Translate X", 翻译课件 / 中文版 — one artifact: outcomes, syllabus, slides source, handouts, exam instructions | Glossary-bound translation + pedagogical-equivalence pass + divergence log + pairing-registry entry |
| `parallel` | "Update the other version", "keep both in sync", 中英对照 maintenance | Paired-version create/update: change one side → propagate to the other; drift report when versions evolved independently |
| `check` | "Are my terms consistent?", pre-semester sweep, 检查术语 | Read-only terminology consistency audit across ALL course materials in one language or across the pair — every finding located, no rewrites |

**Mode dispatch rule:** a translation request for an artifact whose domain terms are not
yet covered by a confirmed glossary routes through `glossary` first — on the new terms
only, incrementally, never a restart. Detect intent in any language.

### Does NOT trigger

| Scenario | Use instead |
|----------|-------------|
| Writing the original materials (syllabus, lessons, exams, scripts) | The producing skill: `course-designer`, `lesson-builder`, `assessment-architect`, `media-scripter` |
| Translating student-facing communications (announcements, emails, FAQ) | `course-publisher`, binding to this skill's glossary |
| General translation unrelated to a course | Out of scope for this suite |

## Agent Team (4)

| Agent | Role |
|-------|------|
| `glossary_keeper_agent` | Extracts candidate terms, proposes pairs with authority notes, runs batched professor confirmation, maintains the versioned glossary other skills consume |
| `translator_agent` | Glossary-bound translation with pedagogical-equivalence checks: cultural accessibility, difficulty shift, register, length expansion; logs every deliberate divergence |
| `parallel_sync_agent` | Pairing registry, change propagation, three-way drift reports; professor chooses merge direction — never auto-merges |
| `terminology_auditor_agent` | Read-only consistency audit: glossary violations, intra-language inconsistency, untranslated strays, script/punctuation discipline — every finding located |

## Workflow (`translate` mode)

```
Phase 0  GLOSSARY GATE — check the confirmed glossary covers the artifact's domain
                         terms. Missing or stale coverage → `glossary` mode on the new
                         terms only (incremental — not a restart of the glossary)
Phase 1  DRAFT         — translator_agent produces the glossary-bound translation with
                         pedagogical-equivalence notes: examples that don't cross
                         cultures flagged with a proposed local equivalent; instructions
                         whose difficulty shifts in translation flagged
Phase 2  TERM AUDIT    — terminology_auditor_agent passes over the draft: every
                         confirmed term rendered exactly, near-misses are defects
         🧑 checkpoint: translation + divergence log — every deliberate non-literal
            choice listed with location and reason; the professor approves or redirects
Phase 3  REGISTER      — parallel_sync_agent records the pairing: which exact version
                         of the source this translation matches, in the sync register
                         and passport artifacts[]
```

`glossary` mode runs glossary_keeper end-to-end (extract → propose → 🧑 batched
confirmation → version). `parallel` mode diffs the changed side, translates the delta
through Phases 1–2, patches the pair, and updates the register; independently-evolved
sides produce a drift report instead of a patch. `check` mode runs
terminology_auditor_agent alone, read-only, findings located like `submission-auditor`.

## Iron rules

1. **Glossary-first.** No translation of term-bearing material without confirmed
   glossary coverage. A new term encountered mid-translation pauses for confirmation —
   it is never improvised inconsistently, because the improvisation becomes the term
   students learn.
2. **The professor confirms terminology.** Discipline terminology is the professor's
   domain. Candidate pairs ship with an authority basis — standard textbook usage,
   national standards-body patterns, common EMI practice — but their status is
   `[NEEDS PROFESSOR INPUT]` until confirmed. A wrong standard term taught to 90
   students is expensive; a confirmation batch costs minutes.
3. **Pedagogical equivalence over literalism.** Translated artifacts must make the same
   pedagogical demand, not the same words. Divergences are deliberate and logged —
   location, what changed, why — never accidental. Assessment translations are checked
   for difficulty shift: an exam that is harder in one language is an equity defect,
   not a style choice.
4. **Version pairing is recorded.** Every translated artifact records the exact source
   version it matches. Sync status is checkable at any time; drift is loud. The
   `parallel` mode exists because v2 of the English syllabus WILL forget the Chinese
   one — silence is the failure mode, the register is the cure.
5. **Language-pair agnostic, EN⇄zh-CN tuned.** `references/emi_conventions.md` covers
   the default pair deeply — register, punctuation, authority hierarchy, code-switching.
   Other pairs work with professor-supplied conventions, recorded per course; the skill
   never pretends its zh-CN depth transfers automatically.

## Outputs

- `bilingual/glossary.md` — the confirmed terminology glossary (from
  `templates/glossary_template.md`), versioned, consumed by other skills
- `bilingual/_.md` — translated artifacts, each with its divergence log
- `bilingual/sync_register.md` — pairing registry (from
  `templates/sync_register_template.md`): what matches what, at which version
- `bilingual/drift_report.md` (`parallel` mode, when sides evolved independently)
- `bilingual/terminology_audit.md` (`check` mode) — located findings, ordered by
  student impact
- Passport: paired artifacts cross-referenced in `artifacts[]`

## References

- `references/emi_conventions.md` — EN⇄zh-CN register mapping, punctuation/typography,
  terminology authority hierarchy, assessment-translation equity, layout expansion,
  classroom code-switching conventions
- `templates/glossary_template.md`
- `templates/sync_register_template.md`
- Shared: `shared/course_passport_schema.md` (note `course.language_of_instruction`),
  `shared/checkpoint_protocol.md`, `shared/quality_gate_protocol.md`

## Source & license

This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.

- **Author:** [YujxZJCN](https://github.com/YujxZJCN)
- **Source:** [YujxZJCN/teaching-skills](https://github.com/YujxZJCN/teaching-skills)
- **License:** MIT

Install and usage instructions live in the source repository linked above.

## Pricing

- **Free** — Free

## Security capabilities

Automated source analysis of v0.1.0 — what this tool can access:

- **Network access:** no
- **Filesystem access:** no
- **Shell / process execution:** no
- **Environment & secrets:** no
- **Dynamic code execution:** no

*"Yes" means the capability is present in the source — more access means more to trust, not that it is unsafe.*


## Versions

- **0.1.0** — security scan: passed — Imported from the upstream source.

## Links

- Listing page: https://agentstack.voostack.com/l/skill-yujxzjcn-teaching-skills-bilingual-courseware
- Seller: https://agentstack.voostack.com/s/yujxzjcn
- Browse the marketplace: https://agentstack.voostack.com/browse

---
Listed on AgentStack — the marketplace for AI agent skills and MCP servers. Every listing is security-reviewed. Creators keep 70%.
