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 instructions/zhinjs/zhin/copilot-instructionsgit clone --depth 1 https://github.com/zhinjs/zhinWrote 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/instructions/zhinjs/zhin/copilot-instructions)<a href="https://agentmods.dev/instructions/zhinjs/zhin/copilot-instructions"><img src="https://agentmods.dev/badge/instructions/zhinjs/zhin/copilot-instructions.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 | $0.01156 | $0.01156 |
| Opus 5 | $0.00578 | $0.00578 |
| Sonnet 5 | $0.00231 | $0.00231 |
| Haiku 4.5 | $0.00116 | $0.00116 |
Grade A, and why
zhin copilot-instructions.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 4d 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 — 113 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Zhin.js Copilot Instructions
优先阅读根目录 AGENTS.md。它是仓库级入口。
Plugin Runtime 为准。 新插件只用
definePlugin+ 约定目录(defineCommand等)。
禁止教 / 写usePlugin()、MessageCommand、bootstrapNode/zhin.js/node。
插件创作面:.github/instructions/zhin-plugin.instructions.md
标准流程:skillzhin-plugin-standard-development
迁移旧代码:skillmigrate-zhin-plugin-runtime
常驻约束
- pnpm workspace monorepo,不用 git submodule。
- TypeScript 本地相对导入必须带
.js扩展名。 - 新插件:
plugin.tsdefault-exportdefinePlugin();能力按目录发现。 - IM 出站:
Message.$reply/Adapter.sendMessage→renderSendMessage→before.sendMessage→ Endpoint;禁止旁路。 - 分层:
basic → kernel → ai → core → agent → zhin(basic/cli可为 composition root)。 - 改架构前读
docs/concepts/architecture.md、docs/contributing/repo-structure.md。
最小创作面示例
// plugin.ts
import { definePlugin } from 'zhin.js';
export default definePlugin({
name: 'my-plugin',
metadata: { displayName: 'My Plugin' },
setup(context) {
context.lifecycle.add(() => { /* cleanup */ });
},
});
// commands/hello/[name].ts — 路径即路由,类型在 params 中声明
import { defineCommand } from 'zhin.js/command';
export default defineCommand({
description: '打招呼',
params: {
name: { type: 'string', description: '名字' },
},
execute({ params }) {
return `你好,${params.name}!`;
},
});
单文件 demo:examples/single-file-bot/bot.ts(setup({ addCommand }))。
约定目录
| 目录 | API |
|---|---|
commands/**/*.ts |
defineCommand() |
middlewares/*.ts |
defineMiddleware() |
components/*.tsx |
defineComponent() |
tools/*.ts |
defineAgentTool() |
pages/*.tsx |
definePage() |
skills/<name>/SKILL.md |
Skill |
agents/<name>.agent.md |
Agent |
package.json#zhin 声明 entry / features。详情见 instructions 文件。
开发工作流
pnpm build # turbo:basic → packages → plugins
pnpm --filter @zhin.js/core build
pnpm test / pnpm test:watch / pnpm test:coverage
pnpm dev # examples/minimal-bot(Stable)
pnpm dev:full # examples/full-bot(L4)
pnpm release / pnpm bump / pnpm pub # changesets
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.
- 4d ago First seen · 113 lines · 1,156 tokens per session scan A 08ec8cfdd5df
zhin copilot-instructions.md is an instructions file published in the GitHub repository zhinjs/zhin (135 stars, last pushed today), licensed MIT. It adds 1,156 tokens to every session, about $0.0058 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 instructions, from other repositories
AgentEval copilot-instructions.md
Copilot instructions for AgentEvalHQ/AgentEval, covering agenteval - ai coding agent instructions, architecture overview, environment setup, optional: secondary models for comparison and build & test commands.
AgentEval maf-upgrade-preparation.instructions.md
Instructions for analyzing a new MAF version and producing an upgrade plan BEFORE updating the NuGet package.
AgentEval tracing.instructions.md
Guidelines for implementing trace recording and replay.
api2mcp4j CLAUDE.md
Claude Code instructions for TheEterna/api2mcp4j, covering claude.md, 项目概述, 顶层授权框架(必读), 开发心法与规范导航 and 通用心法(docs/rules/global/,所有会话默认生效).
skill-based-architecture AGENTS.md
Instructions for WoJiSama/skill-based-architecture, covering agents.md, quick routing (survives context truncation), auto-triggers and red flags — stop.
lobu AGENTS.md
Instructions for lobu-ai/lobu, covering repo map, unrecoverable — never do these, facts you cannot derive, ship a change and how to work.