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/stravu/crystal/agents-mdgit clone --depth 1 https://github.com/stravu/crystalWhat 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.00702 | $0.00702 |
| Opus 5 | $0.00351 | $0.00351 |
| Sonnet 5 | $0.00140 | $0.00140 |
| Haiku 4.5 | $0.00070 | $0.00070 |
Grade A, and why
crystal 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 3d 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 — 43 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Repository Guidelines
Project Structure & Module Organization
- Root
pnpmworkspace with packages:main/(Electron main process, TypeScript),frontend/(React + Vite),shared/(shared types), andtests/(Playwright E2E). - Key paths:
main/src/{services,ipc,utils}/,frontend/src/{components,hooks,stores,utils}/,main/assets/,scripts/. - Build artifacts:
frontend/dist/,main/dist/, packaged outputdist-electron/.
Build, Test, and Development Commands
- Dev app:
pnpm dev(spawns frontend + Electron). - Build all:
pnpm build(frontend, main, then electron package). - Package (examples):
pnpm build:mac,pnpm build:linux. - Lint:
pnpm lint; Type-check:pnpm typecheck(runs per package). - Tests (E2E):
pnpm test,pnpm test:ui, CI configs inplaywright.ci*.config.ts. - Main unit tests (if added):
pnpm --filter main test, coverage:pnpm --filter main run test:coverage.
Coding Style & Naming Conventions
- Use TypeScript throughout; follow ESLint configs in
frontend/eslint.config.jsandmain/eslint.config.js. - Indentation 2 spaces; prefer explicit types at module boundaries.
- Naming:
camelCasefor variables/functions,PascalCasefor React components/types,kebab-casefor filenames (React files may match component name). - Run
pnpm lint && pnpm typecheckbefore sending PRs.
Testing Guidelines
- E2E tests live in
tests/*.spec.ts(Playwright). Example:pnpm test -- tests/smoke.spec.ts. - Add Playwright tests for user-visible flows; mock external services where possible.
- For backend logic in
main/, use Vitest colocated undermain/src/**/__tests__or*.spec.ts.
Commit & Pull Request Guidelines
- Commits: present tense, focused, reference issues (e.g., "Fix session diff flicker, closes #123").
- PRs must include: clear description, linked issues, testing notes; screenshots/GIFs for UI changes.
- If dependencies change, run
pnpm run generate-noticesand commit updatedNOTICES.
Security & Configuration Tips
- Node >=
22.14;pnpm>=8. Usepnpmonly. - Secrets via
.env(dotenv) for local dev; never commit secrets. - To avoid clobbering local data when hacking on Crystal with Crystal:
CRYSTAL_DIR=~/.crystal_test pnpm dev.
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.
- 3d ago First seen · 43 lines · 702 tokens per session scan A 040af1ff70a1
crystal AGENTS.md is an instructions file published in the GitHub repository stravu/crystal (3,114 stars, last pushed 6mo ago), licensed MIT. It adds 702 tokens to every session, about $0.0035 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
claude-code-settings copilot-instructions.md
Instructions for feiskyer/claude-code-settings, covering claude.md, environment setup, required dependencies, configuration and skills.
thinkrail AGENTS.md
Instructions for JetBrains/thinkrail, covering thinkrail, module structure & boundaries (top-priority requirement), engine: pi only, in-process, architecture (three rings) and repo layout.
tree-sitter-analyzer CLAUDE.md
Instructions for aimasteracc/tree-sitter-analyzer, covering ruflo — claude code configuration, rules, test quality rules — locked (2026-06-28), t-1: no new test files for existing plugins (blocker) and t-2: no weak assertions — ratchet-enforced (blocker).
tree-sitter-analyzer AGENTS.md
Instructions for aimasteracc/tree-sitter-analyzer, covering agent instructions, codemap index, test runtime contract, ci test tier contract and agent dogfood feedback loop.
SpecRoute GEMINI.md
Instructions for Enovatr-Labs/SpecRoute, a project described as: Open source framework for spec-driven agentic software engineering. PRDs, prompts, agents, skills, workflows, and coding rules for Codex, Claude, and modern AI development teams.
nextjs-skills CLAUDE.md
Instructions for mohamed-hossam1/nextjs-skills: All contribution rules — style, naming, file layout, verification — live in AGENTS.md. Read that first.