Borrowing it
Nothing to install: this file belongs to Lykhoyda/ask-llm. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.
curl -O https://raw.githubusercontent.com/Lykhoyda/ask-llm/main/AGENTS.mdgit clone --depth 1 https://github.com/Lykhoyda/ask-llmWrote 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/lykhoyda/ask-llm/agents-md)<a href="https://agentmods.dev/instructions/lykhoyda/ask-llm/agents-md"><img src="https://agentmods.dev/badge/instructions/lykhoyda/ask-llm/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.
<a href="https://agentmods.dev/instructions/lykhoyda/ask-llm/agents-md"><img src="https://agentmods.dev/badge/instructions/lykhoyda/ask-llm/agents-md.svg" alt="Reviewed on agentmods" width="80" 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.1 | $0.01830 | $0.01830 |
| Opus 5.5 | $0.00732 | $0.00732 |
| Sonnet 5.5 | $0.00366 | $0.00366 |
| Haiku 4.5 | $0.00183 | $0.00183 |
Grade A, and why
ask-llm 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 15d 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 — 25 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Project agent memory
This file is the project's committed home for project-intrinsic agent knowledge: build, test, release, architecture, and sharp-edge notes that should travel with the code.
- Build/test:
yarn install --immutable, thenyarn build(topological — run it BEFOREyarn test; workspace tests resolve sibling packages fromdist/, so unbuilt@ask-llm/sharedfails every suite). Lint viayarn lint(biome format is enforced;biome check --writefixes). Harness-facing changes use the canonical local-onlyyarn prepr:harnessgate; opt-in live authorization and evidence rules are indocs/HARNESS-SMOKE.md. Supported platforms are Linux and macOS (CI: Ubuntu Node 24 five-batch pluspi-lifecycle-macos); every package requires Node 24, the current LTS (ADR-171); do not add Windows jobs or claim Windows support (ADR-159). Claude GitHub Action is@claudeon demand only (ADR-160); do not restore automatic PR review viaclaude-code-review.yml. - Every
packages/llm-mcp/scripts/**/*.mjsis generated from a TypeScript 7.mtssibling and committed (marketplace git-subdir installs cannot build): after editing an.mts, runyarn workspace @ask-llm/mcp build:hooksand commit both; never add or hand-edit a.mjsthere (generated-hooks.test.tsenforces this, ADR-170/171). - Repo-root
scripts/*.ts(and test fixtures) are plain TypeScript run directly by Node 24 type stripping, with no build step: import siblings as./x.ts, use erasable syntax only;yarn linttypechecks them. No other.js/.mjs/.cjsmay be committed (ADR-172,scripts/typescript-contract.test.ts). - Architecture decisions live in
docs/DECISIONS.md(numbered ADRs, newest prepended at the top); provider behavior differences are deliberate and cataloged indocs/PROVIDER-PARITY.md— read both before "aligning" providers. - Docs-model drift is CI-enforced:
scripts/check-docs-drift.tsrequiresapps/docs/.vitepress/theme/providers.tsdefaultModel(and gemini/antigravityfallbackModel) values to match each package'sconstants.tsliterally, matched inside each provider's own object block. Change both together. - MCP Registry rejects duplicate versions. Keep normal and recovery publication routed through
scripts/publish-mcp-registry.ts; it verifies exact existing records and publishes only missing ones (ADR-139), after waiting up to 10 min for npm to show each selected version (ADR-174). Manual Release dispatch has no inputs: onmainit always repairs Registry, the unified GitHub Release, and per-package tags, and must not re-enter npm publication (ADR-158). - Public package source tags are remote
<name>@<version>refs managed only byscripts/create-or-verify-package-tags.tson normal and recovery release paths (ADR-151/152);changesets/actionv2 must keep bothcreate-github-releases: falseandpush-git-tags: false, while the helper excludes private shared, never retags/forces, and also creates or verifies@ask-llm/mcp@<version>for the single unified GitHub Release (ADR-181). Changesets 3 publishes viayarn npm publish, sorelease.ymlmust passYARN_NPM_AUTH_TOKENfromsecrets.NODE_AUTH_TOKEN(ADR-156);NODE_AUTH_TOKENalone authenticates npm CLI steps only. After publish,npm access set status=publicis verify-first and must not fail the job on 401/403 when packages are already public or the token cannot change access (ADR-157). - Gemini quota fallback is
gemini-3.8-flash(ADR-155); the antigravity fallback is alsogemini-3.8-flashbut on independent evidence (ADR-178: agy's base slug +--effort;agy modelslists only tiered ids likegemini-3.8-flash-high, which conflict with--effort) — agy slugs are evidence-pinned to its live catalog (ADR-137), so never bump both in sympathy. - Provider default-model constants leak further than the provider package:
packages/llm-mcp/src/constants.ts(PROVIDERS.*.defaultModel) is threaded into executors asoptions.modelbymachine.ts, so executors cannot use "was a model passed?" to detect user pins (see ADR-137). - Antigravity MCP and machine execution refuse before agy spawn unless
ASK_ANTIGRAVITY_ALLOW_UNISOLATED=1; the raw/brainstormparticipant skips by default. Opt-in has no read-only guarantee (ADR-177). - agy (Antigravity) CLI ground truth for this repo's executor is recorded in ADR-137 (minimum 1.1.5, base slug + separate
--effort, per-slug effort tiers, the live-capturedinvalid model selectionerror grammar), ADR-141 (answers come from--output-format jsonstdout — keyresponse, usage object — on every supported version;--disable-slash-commandsis 1.1.9+ only), ADR-162 (agy ≥1.1.28--print-timeoutexpiry is exit 0 with a truncated answer; fail closed, do not serve it as complete), and ADR-178 (agy ≥1.2.6 exit-3AGY_ERROR:stderr line: classify only its compacted fields, never the opaqueerror_id). - Grok transport and model identity are separate (ADR-146/147;
/brainstormexact Grok + Sol routing and partial-consensus rules are in ADR-148): unified startup probes bothxai-apiandgrok-clireadiness because request-level harness selection happens later (an explicitASK_GROK_HARNESSnarrows readiness to that default), but execution selects exactly one explicit/default harness with no failover; Cursor Agent is a model-neutral harness (ask-cursor-agent) requiring separate provider + exact Cursor catalog ID, never a provider itself. @ask-llm/mcpowns the Claude Code + Cursor Agent + Pi host assets, with@ask-llm/pluginas a dependent compatibility bridge (ADR-142/147/161); host contracts live in the skill adapters,apps/docs/compatibility/cursor.md, anddocs/PI-COMPATIBILITY.md. Cursor uses Agent Skills + a unified-onlymcp.json(oneask-llmentry; split Codex/Grok servers are optional user installs whose leaves are preferred when exposed) exposing exactlyask-llm-codex-pair/ask-llm-grok-pairplus their old-name pointers (explicit emptyagents/commands/hooksso Claude agents andhooks/hooks.jsonare not auto-discovered;ask-llm setupinstalls the rest of the portable corpus through the skills CLI), never Claude hooks/namespaces; the Claude plugin.mcp.jsonbundles only Codex while@ask-llm/mcp/@ask-llm/grok-mcpstay user-scoped. Codex-facing plugin workflows prefer anyask-codexleaf, then fully pinned unifiedask-llm(provider, model,reasoningEffort,includeDirs,preferred,sandbox; older schemas fail closed), then disclosedcodex exec; pair skills call unifiedask-llmonly fully pinned. Pi's package manifest ships only the extension (native provider tools) and Pi reads the skills from the folderask-llm setupfills (ADR-183), and codex-pair requires marker + project trust + a user-owned canonical-project allowlist. The published Pi host floor must equal the oldest exactpi-package-smokematrix pin (currently 0.83.0).
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.
- 15d ago Changed · +2 tokens per session 30331f62ce24
- 26d ago Changed · +44 tokens per session fad514f0a5a5
- 29d ago Changed · +14 tokens per session 0d8b6a805059
- 1mo ago Changed · +15 tokens per session ade8ab3a86c6
- 1mo ago Changed · +2 lines · +249 tokens per session 959a99fdf27b
- 1mo ago Changed · +1 lines · +94 tokens per session f25af4907b7a
- 1mo ago Changed · +37 tokens per session df03ebe6cf85
- 1mo ago Changed · +91 tokens per session ff4279d28b68
- 1mo ago Changed · +42 tokens per session 3fdf4d3c5df6
- 1mo ago First seen · 22 lines · 1,242 tokens per session scan A 3d3351ff44c8
ask-llm AGENTS.md is an instructions file published in the GitHub repository Lykhoyda/ask-llm (18 stars, last pushed today), licensed MIT. It adds 1,830 tokens to every session, about $0.0073 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-30.
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).
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.
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).
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.
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).
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.