open-science AGENTS.md

Instructions for adding user-visible text to an open-science desktop application translated into seven languages.

In plain words
What is it for?
Adding translation keys, choosing between shared and process-specific namespaces, updating locale files, and checking translations with the project’s tests.
Why use it?
It prevents new interface text from appearing in only one language or being placed in the wrong translation namespace.

Instructions file for CodexOpenCode

Install

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.

agentmods
npx agentmods add instructions/aipoch/open-science/agents-md
Clone the repo
git clone --depth 1 https://github.com/aipoch/open-science

Made for: Codex, OpenCode.

Per session 3,563 This file is loaded in full into every session.
When invoked 3,563 The same file — it is already loaded in full.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

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.

ModelPer sessionOnce invoked
Fable 5 $0.03563 $0.03563
Opus 5 $0.01782 $0.01782
Sonnet 5 $0.00713 $0.00713
Haiku 4.5 $0.00356 $0.00356

Measured today against content hash e4bfe8529108, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

open-science AGENTS.md 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 today.

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.

AGENTS.md · 251 lines

How it starts

The opening of the file, as written. The whole thing — 251 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Open Science — Agent Notes

i18n — translating new user-visible strings

The renderer ships eight translated locales: de (German), es (Spanish), fr (French), zh-Hans (Simplified Chinese), zh-Hant (Traditional Chinese), ja (Japanese), ko (Korean), and ru (Russian). Every user-visible string added to the renderer must have a corresponding entry in the renderer namespace for all translated locales unless the same meaning is intentionally shared with Electron main through the common namespace:

src/shared/i18n/locales/zh-Hans.json
src/shared/i18n/locales/zh-Hant.json
src/shared/i18n/locales/ja.json
src/shared/i18n/locales/ko.json
src/shared/i18n/locales/fr.json
src/shared/i18n/locales/ru.json
src/shared/i18n/locales/de.json
src/shared/i18n/locales/es.json

Each locale file has exactly three top-level namespace objects: common, native, and renderer. common is loaded by main and renderer, native only by main, and renderer only by the React adapter. Put a key in common only when its UI meaning and reviewed translation are the same in both processes; an identical English key is not enough.

The guard suite in src/renderer/src/i18n/resources.test.ts runs on every npm test and will fail the PR if any of the following are violated.

Key format

Keys are the English source text verbatim — there is no English catalog. keySeparator and nsSeparator are both disabled, so dots and colons in copy are literal characters.

// ✓ correct
t('Data folder not found')

// ✗ wrong — semantic path, not copy
t('workspace.dataRoot.missing')

How to wrap strings

Surface How to translate
JSX text node {t('Copy here')}
JSX attribute visible to users (aria-label, placeholder, alt) aria-label={t('Close dialog')}
Sentence with an embedded link or element <Trans i18nKey="See <docs>the guide</docs>" components={{ docs: <a href="…" /> }} />
Interpolated value t('{{count}} files', { count: n })

Read the full file on GitHub · 251 lines

Changes

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.

  1. today Changed · +4 lines · +145 tokens per session e4bfe8529108
  2. 2d ago First seen · 247 lines · 3,418 tokens per session scan A 561b37408206

Subscribe to this mod's changes

open-science AGENTS.md is an instructions file published in the GitHub repository aipoch/open-science (3,497 stars, last pushed today), licensed Apache-2.0. It adds 3,563 tokens to every session, about $0.0178 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.

Related

Other instructions, from other repositories