moonbit-agent-skills: Instructions file for Codex

AGENTS.md

moonbit-agent-skills AGENTS.md is an instructions file for Codex, OpenCode from hyfdev/moonbit-agent-skills. It costs 2,041 tokens per session, scanned A, original, MIT.

Repository instructions for maintaining MoonBit product skills and their TypeScript validation tools. MoonBit is a programming language and toolchain; the repository requires claims about it to be checked against a pinned version.

In plain words
What is it for?
Use them when editing MoonBit skills, checked documentation, fixtures, validators, generators, or tests, and when mirroring the project’s continuous-integration checks locally.
Why use it?
They keep documentation accurate and ensure language guidance, release coverage, and product routing are backed by runnable checks rather than assumptions.

Instructions file for CodexOpenCode

Written for Codex and OpenCode: the file is AGENTS.md. Also seen: mentions Claude Code; mentions Codex.

This is hyfdev/moonbit-agent-skills's own configuration. It tells Codex and OpenCode how to work on moonbit-agent-skills itself, so it is not a mod to install elsewhere. Copy it as a starting point and replace the rules that are about this project. Everything moonbit-agent-skills configures →

Reuse

Borrowing it

Nothing to install: this file belongs to hyfdev/moonbit-agent-skills. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.

Copy the file
curl -O https://raw.githubusercontent.com/hyfdev/moonbit-agent-skills/main/AGENTS.md
Clone the repo
git clone --depth 1 https://github.com/hyfdev/moonbit-agent-skills

Made for: Codex, OpenCode.

Wrote 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.

agentmods badge for moonbit-agent-skills AGENTS.md

README.md
[![agentmods](https://agentmods.dev/badge/instructions/hyfdev/moonbit-agent-skills/agents-md/github.svg)](https://agentmods.dev/instructions/hyfdev/moonbit-agent-skills/agents-md)
Your own site
<a href="https://agentmods.dev/instructions/hyfdev/moonbit-agent-skills/agents-md"><img src="https://agentmods.dev/badge/instructions/hyfdev/moonbit-agent-skills/agents-md/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.

agentmods 80×15 button for moonbit-agent-skills AGENTS.md

Your own site · 80×15
<a href="https://agentmods.dev/instructions/hyfdev/moonbit-agent-skills/agents-md"><img src="https://agentmods.dev/badge/instructions/hyfdev/moonbit-agent-skills/agents-md.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 2,041 This file is loaded in full into every session.
When invoked 2,041 The same file — it is already loaded in full.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
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.1 $0.02041 $0.02041
Opus 5.5 $0.00816 $0.00816
Sonnet 5.5 $0.00408 $0.00408
Haiku 4.5 $0.00204 $0.00204

Measured 16d ago against content hash 5851ada36694, method: parsed. Prices are Anthropic first-party input rates as of 2026-10-07, from the pricing page.

Security

Grade A, and why

moonbit-agent-skills 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 16d 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.

AGENTS.md · 52 lines

How it starts

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

Working in this repository (agent instructions)

This repository publishes two MoonBit product skills (skills/moonbit-language, skills/moonbit-toolchain) plus a repository-maintenance skill (skills/moonbit-agent-skills-maintainer). The core promise is: every claim is verified against a pinned MoonBit toolchain, every upstream release item has an explicit decision and a discoverable product route, every official language topic is routed or explicitly outside the product boundary, and all three contracts are machine-checked. When editing here, that promise is the thing you must not break.

Rules

  1. Repository tooling is TypeScript. Repository-owned executable tooling, validators, generators, eval runners, and tests must be TypeScript run directly by Node.js 24. Do not add Python or shell implementations. Shell is allowed only for documented command examples and CI run blocks that invoke external tools.
  2. No unverified content. A fact enters a skill only with a runnable proof: an mbt check block in a .mbt.md reference (executed by tooling/run_checked_docs.ts), a fixture under verification/fixtures/ (executed by tooling/run_fixtures.ts), or a command-manifest entry (executed by tooling/verify_commands.ts). If you cannot verify it, label it documented (with source URL) or leave it out.
  3. One owner per fact. Language semantics belong to moonbit-language; project operation belongs to moonbit-toolchain. Cross-links are one line; never copy explanations across skills (tooling/check_duplication.ts enforces this).
  4. Always follow the official latest version. The repository's single authoritative state is the exact current latest channel published at https://cli.moonbitlang.com/version.json, with both documentation surfaces pinned to the current moonbitlang/moonbit-docs main commit. Never hold the skills on an older compiler while waiting for a monthly website article. Never hand-edit moon, moonc, or moonrun version strings: re-pin with vp run snapshot-toolchain --date YYYY-MM-DD, regenerate both language and toolchain surfaces from current docs, re-run all verification, re-stamp fixtures (vp run run-fixtures --stamp --date ...), and update skill frontmatter to match. tooling/check_versions.ts checks internal consistency and tooling/verify_latest_upstream.ts makes CI fail as soon as any official latest source moves.
  5. Proposals are not features. Anything sourced from moonbit-evolution or a release-note "planned" section must be labeled proposal, never shown as current syntax.
  6. Skill descriptions are an interface. If you touch a frontmatter description, re-run the activation eval (evals/activation/run_activation.ts) or state explicitly that routing is unrevalidated.
  7. Each installable skill has per-client activation surfaces — keep all of them in sync. A product skill ships three: the frontmatter description (open-spec catalog, all clients), user-invocable: false (Claude Code extension, hides the manual / entry), and agents/openai.yaml (Codex: display name, short description, default prompt, allow_implicit_invocation: true). When renaming a product skill, changing its scope/description, or adding a new product skill, update the Codex sidecar in the same change (tooling/validate_skills.ts enforces its presence).
  8. Release articles are supplemental, not a version gate. For every MoonBit website release article that exists, use the internal moonbit-agent-skills-maintainer workflow to generate verification/releases/<release>/source.json from the pinned moonbitlang/website Markdown and close every source ID in coverage.json. Never hand-author or filter that inventory. A compiler or toolchain version may ship before its website article; in that case, update immediately from the official latest toolchain, full current language surface, upstream docs, and executable probes. tooling/verify_release_sources.ts checks published article inventories and tooling/check_release_coverage.ts blocks missing, duplicate, unsupported, or unproved decisions. The current coverage status means the newest published website article, not the product version. Every actionable decision in that article also needs a discoverability route whose reference path and exact search terms occur together on one line in the owning skill's Feature index.
  9. Baseline completeness is separate from release completeness. verification/language-surface/source.json is mechanically generated from the pinned moonbitlang/moonbit-docs language tree by recursively following root and nested toctrees, pinned glob expansions, {include} pages, and H2-H4 headings. Every item includes a section-body fingerprint. Close every source ID exactly once in schema-v2 coverage.json as routed or out-of-scope, record the reviewed fingerprint, and put every routed official topic name in its target reference; never add pending, a hand-written page whitelist, or a broad route that claims content the reference does not contain. Official docs discover topics but do not verify semantics: every routed fact still needs checked documentation, a fixture, or an explicit Documented, not executed source. Run both language-surface checks for language-scope or documentation-pin changes.
  10. Toolchain docs are a separate closed surface. verification/toolchain-surface/source.json mechanically inventories every Markdown document below next/toolchain/ at the pinned docs commit and fingerprints every H1-H4 section body. Close each source ID exactly once in coverage.json, recording its current fingerprint and either a product route or an explicit out-of-scope reason. A changed body, new heading, or new file must fail CI until reviewed. Official docs discover claims; executable command-manifest evidence or an explicit Documented, not executed label is still required before a fact enters the skill.
  11. Deprecations prove both sides. Enable warnings that are off by default, add --deny-warn, prove the old form is caught, and prove the replacement passes under the same warning settings. Inspect upstream warning configuration before treating a green test as evidence that its syntax is current.
  12. Repository-maintenance skills stay internal. Set metadata.internal: true so default listing, interactive selection, and installs without an explicit skill selector omit them. Do not use --skill "*" in public install instructions because an explicit selector opts into internal skills. The two product skills are the only public install surface.
  13. Eval breadth comes before repetition. Count distinct user cases, not condition cells. A case may have at most two materially different user-facing angles, and each angle may run at most twice. Start every content case with one paired none versus ours run on Claude Code's sonnet alias; on this repository's verified local setup the assistant execution model must be deepseek-v4-pro, not deepseek-v4-flash. Repeat the DeepSeek pair only when ours fails or the pair is unstable. Use Kimi/K3 only when ours still fails on the second DeepSeek run, and report that fallback separately rather than pooling providers. Do not automatically cross-product angles, repetitions, and clients.
  14. Every new or updated eval report has a simple user-facing result. Put it before the technical analysis and keep it even when a detailed report follows. Give every distinct task its own row named after the concrete work the agent had to complete, state the total number of distinct tasks, show percentages for the two conditions side by side, identify the observed model, and give the primary finding in one sentence. Name the comparison exactly (No skills, Historical skill, or the specific removed route), never just Baseline. Always show final task success, including ties and regressions; skill activation and reference reads are secondary evidence and must not replace it. Keep exact counts, internal task IDs, claim IDs, condition names, repetitions, cells, graders, token breakdowns, and statistical analysis in the technical section. Never call cells or repetitions tasks.
  15. A skill directory change needs a new installed identity. Increment that skill's metadata.skill-version, set metadata.updated-date to the change date, and keep the public README status synchronized. Use SemVer: patch for corrections or metadata, minor for compatible new coverage, and major for an incompatible rename or scope change. validate-skills checks the metadata format and README projection.

Read the full file on GitHub · 52 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. 16d ago Changed · +1 lines · -6 tokens per session 5851ada36694
  2. 2mo ago First seen · 51 lines · 2,047 tokens per session scan A 897e6a955112

Subscribe to this mod's changes

moonbit-agent-skills AGENTS.md is an instructions file published in the GitHub repository hyfdev/moonbit-agent-skills (6 stars, last pushed 17d ago), licensed MIT. It adds 2,041 tokens to every session, about $0.0082 per session on Opus 5.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-31.

Related

Other instructions, from other repositories

vscode buildNext.instructions.md

Working notes and architecture documentation for the new esbuild-based build system in build/next. Use when making changes to the new build pipeline (transpile/bundle commands, NLS plugin, source-map handling, resource copying, or self-hosting watch tasks).

microsoft/vscode · 9,715 tokens

next.js AGENTS.md

AGENTS.md instructions for vercel/next.js, covering next.js development guide, codebase structure, monorepo overview, core package: packages/next and other important packages.

vercel/next.js · 7,461 tokens

vscode oss-third-party-notices.instructions.md

Instructions for microsoft/vscode, covering vs code oss third-party-notices pipeline, architecture, pipeline flow in ci, cache eligibility and rollout and applying the notice (cutover).

microsoft/vscode · 5,262 tokens

langchain AGENTS.md

AGENTS.md instructions for langchain-ai/langchain, covering global development guidelines for the langchain monorepo, corridor security analysis, project architecture and context, monorepo structure and development tools & commands.

langchain-ai/langchain · 4,680 tokens

vscode copilot-instructions.md

Copilot instructions for microsoft/vscode, covering vs code copilot instructions, project overview, root folders, core architecture (src/ folder) and built-in extensions (extensions/ folder).

microsoft/vscode · 2,750 tokens

deepseek-harness AGENTS.md

AGENTS.md instructions for deepseek-ai/deepseek-harness, covering agents.md, pre-stable apis and released session data, repository layout, commands and host sandbox failures.

deepseek-ai/deepseek-harness · 4,261 tokens