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/ackeskin/contexture/csharpgit clone --depth 1 https://github.com/AcKeskin/contextureWhat 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.04065 | $0.04065 |
| Opus 5 | $0.02032 | $0.02032 |
| Sonnet 5 | $0.00813 | $0.00813 |
| Haiku 4.5 | $0.00407 | $0.00407 |
Grade A, and why
contexture csharp.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 yesterday.
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 — 118 lines — stays where its author put it; the contents beside it link to each section on GitHub.
csharp rules
Auto-loaded by Copilot when editing files matching
**/*.cs. Generated fromarchitectural-rules/csharp/— do not hand-edit.
C# async
Async methods return Task / Task<T> (or ValueTask<T> for hot paths). Never async void except event handlers — an exception in async void cannot be caught and tears down the process.
Name async methods with the Async suffix (LoadAsync). The suffix is the contract that the method is awaitable.
Library code calls ConfigureAwait(false) on awaits — it does not capture the caller's synchronization context, which prevents deadlocks in callers that block. Application/UI code that needs the context omits it.
Never block on async with .Result / .Wait() / GetAwaiter().GetResult(). Sync-over-async deadlocks on a captured context. Await all the way up, or make the entry point async.
Long-running async work takes a CancellationToken and honours it. Cancellation is part of the contract, not an afterthought.
Why: async bugs in C# are silent until production — a swallowed async void exception or a sync-over-async deadlock looks fine in tests and hangs under load. Source: Microsoft .NET async guidance.
C# collections and LINQ
LINQ queries use deferred execution — they do not run until enumerated. The query captures variables by reference; the result reflects state at enumeration time, not definition time.
Materialize with ToList() / ToArray() once when you need to iterate multiple times or capture a snapshot. Enumerating a query twice re-runs it.
Beware multiple enumeration of an IEnumerable, especially over DB/IO sources — each pass re-queries. Accept IReadOnlyList<T> / IReadOnlyCollection<T> in signatures when callers will enumerate more than once.
Prefer LINQ over hand-rolled loops where it reads clearer (filter/project/aggregate). Drop back to a loop when the operation is imperative, has side effects, or the LINQ becomes harder to read than the loop.
Why: deferred execution and silent re-enumeration are the two LINQ footguns that turn a clean query into an N+1 or a stale snapshot. Source: Microsoft .NET LINQ guidance.
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.
- yesterday First seen · 118 lines · 4,065 tokens per session scan A 3a655910564e
contexture csharp.instructions.md is an instructions file published in the GitHub repository AcKeskin/contexture (2 stars, last pushed 1mo ago), licensed MIT. It adds 4,065 tokens to every session, about $0.0203 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-31.
Other instructions, from other repositories
agentic-workflow CLAUDE.md
Instructions for gtrabanco/agentic-workflow, covering claude.md, repository layout, working rules, authoring a skill and hand off, don't compose across a model/effort boundary.
ccjk AGENTS.md
Instructions for miounet11/ccjk, covering repository guidelines, source of truth, behavior, validation and notes.
ccjk CLAUDE.md
Instructions for miounet11/ccjk: 持久知识唯一来源:docs/CLAUDE-NOTES.md(请优先阅读本文档).
stenographer-mode copilot-instructions.md
Instructions for AkashAi7/stenographer-mode, covering steno mode — global instructions, contract, rules and levels.
context-engineering AGENTS.md
Instructions for fending/context-engineering, covering agents.md, what this project is, structure, standards and navigation.
capy CLAUDE.md
Claude Code instructions for serpro69/capy, covering claude.md, project, architecture, key packages and critical invariants.