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/opencloudgaming/opennow/copilot-instructionsgit clone --depth 1 https://github.com/OpenCloudGaming/OpenNOWWhat 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.00683 | $0.00683 |
| Opus 5 | $0.00342 | $0.00342 |
| Sonnet 5 | $0.00137 | $0.00137 |
| Haiku 4.5 | $0.00068 | $0.00068 |
Grade A, and why
OpenNOW 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 2d 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 — 55 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Copilot instructions for OpenNOW
Project scope
- The active desktop client is in
opennow-stable/(Electron + React + TypeScript). - The repository root
package.jsonis a workspace shim: root scripts proxy toopennow-stablevianpm --prefix opennow-stable.
Build, check, and packaging commands
From repository root
npm run dev
npm run typecheck
npm run build
npm run dist
npm run dist:signed
From opennow-stable/
npm install
npm run dev
npm run typecheck
npm run build
npm run dist
npm run dist:signed
Tests and linting
- There is currently no test script or lint script in this repository.
- There is no single-test command configured yet.
- PR guidance in this repo expects
typecheckandbuildto pass locally.
High-level architecture
- Electron app with three boundaries:
- Main process (
src/main/): auth/session lifecycle, CloudMatch API calls, signaling setup, settings persistence, IPC handlers. - Preload (
src/preload/index.ts): typedcontextBridgesurface that exposes the safe API aswindow.openNow. - Renderer (
src/renderer/src/): React UI and WebRTC client; stream lifecycle is orchestrated inApp.tsx.
- Main process (
- Shared cross-process contracts live in
src/shared/:gfn.tsdefines request/response types and theOpenNowApiinterface used by preload and renderer.ipc.tsdefines canonical IPC channel names used by both preload and main.
- Streaming flow (big picture):
- Renderer calls
window.openNowAPI. - Main IPC handlers in
src/main/index.tsdelegate tosrc/main/gfn/*services. - CloudMatch/session APIs return signaling/session data.
- Main signaling client emits events back to renderer.
- Renderer WebRTC client establishes media/data channels and drives stream UI/state.
- Renderer calls
Key conventions
- Keep the shared contract first: when adding/changing API shapes, update
src/shared/gfn.tsandsrc/shared/ipc.ts, then wire both preload and main handlers. - Keep alias usage consistent:
@shared/*is defined in both TS configs andelectron.vite.config.ts; new shared modules should follow this import pattern. - Renderer should use
window.openNowonly (declared insrc/renderer/src/vite-env.d.ts); avoid importing Electron APIs directly in renderer code. - Session/auth token handling should stay centralized in main (
AuthService.resolveJwtToken/ensureValidSessionWithStatus) so renderer-side cached tokens do not bypass refresh logic. - CloudMatch errors are normalized with
SessionError(src/main/gfn/errorCodes.ts) and rethrown via JSON in IPC handlers; renderer launch/error UX depends ontitle,description, andgfnErrorCode. - Logging is intentionally capturable and exportable from both processes (
@shared/logger,logs:exportIPC); avoid bypassing this path for diagnostics features.
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.
- 2d ago First seen · 55 lines · 683 tokens per session scan A 975727272f8d
OpenNOW copilot-instructions.md is an instructions file published in the GitHub repository OpenCloudGaming/OpenNOW (2,400 stars, last pushed today), licensed MIT. It adds 683 tokens to every session, about $0.0034 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
openscreen AGENTS.md
Instructions for getopenscreen/openscreen, covering agents.md, setup commands, development principles, project layout and code style.
tabularis AGENTS.md
AGENTS.md instructions for TabularisDB/tabularis, covering agents.md, directives, gitnexus — code intelligence, always do and never do.
moonproxy-desktop AGENTS.md
Instructions for MoonProxyHQ/moonproxy-desktop, covering moonproxy, 功能, 技术栈, 目录结构 and 配置与数据存储.
claude-code-profiles CLAUDE.md
Instructions for quinnjr/claude-code-profiles, covering claude.md, project, architecture, command interface and directory-local profiles.
homelab-monitor CLAUDE.md
Instructions for SikamikanikoBG/homelab-monitor, covering claude.md and conventions.
lazy-starter-kit CLAUDE.md
Instructions for Heoooooon/lazy-starter-kit: Follow the safety rules in AGENTS.md. In particular, never execute recursive rm directly; use lazy-safe-rm for a strict descendant of the current Git workspace.