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/dkships/pm-copilot/agents-mdgit clone --depth 1 https://github.com/dkships/pm-copilotWhat 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.00827 | $0.00827 |
| Opus 5 | $0.00413 | $0.00413 |
| Sonnet 5 | $0.00165 | $0.00165 |
| Haiku 4.5 | $0.00083 | $0.00083 |
Grade A, and why
pm-copilot 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 — 62 lines — stays where its author put it; the contents beside it link to each section on GitHub.
PM Copilot — Agent Instructions
Guidance for AI coding agents (Claude Code, Codex, Cursor, Aider, etc.) working in this repo. Human contributors: see CONTRIBUTING.md.
What this is
MCP server connecting an LLM to customer signal data (HelpScout support tickets + ProductLift feature requests). Cross-source theme analysis and prioritized product planning.
Tech stack
- TypeScript, ES modules, Node 18+
@modelcontextprotocol/sdkwith stdio transport- HelpScout API v2 (OAuth2 client credentials)
- ProductLift API v1 (Bearer token, multi-portal)
Scope and boundaries
- PII scrubbing on all customer text before analysis (SSN, CC, email, phone). See SECURITY.md.
- Never send unscrubbed customer text. Scrubbing happens at the format layer.
- Return raw structured data from tools. Let the LLM do synthesis.
- Partial-failure resilient: if one API is down, return data from the other plus a warnings array.
Working rules
- Use
registerTool/registerResourcefor MCP registration (not deprecated.tool()) - All API clients in their own module (e.g.,
helpscout.ts,productlift.ts) - Handle errors with
isError: trueresponses - No
anytypes. Useas Tcasts at API boundaries. - Theme config loaded at runtime via
fs.readFileSync— edits don't require rebuild - Use environment variables for credentials. Never paste token values into config or commit them.
- Run
npm run buildafter source changes before testing through an MCP client.
Definition of done
- Tool responses include
pii_scrubbing_applied: trueandpii_categories_redacted - Partial failures return a
warningsarray identifying which source failed npm run build,npm test, andnpm run audit:ciall pass- New customer data sources route through
src/pii-scrubber.ts
Code style
Adapted from Fabien Sanglard's agent.md (2026-08-21).
- Avoid magic numbers and strings. Extract recurring or meaningful values into named constants or enums; leave self-explanatory one-off values inline. A value defined by a spec (HTTP 200, a protocol byte) gets a constant regardless.
- Reduce indentation. Use early returns and
continueinstead of nesting. - Keep function names under 30 characters.
- Use an enum or a string-literal union instead of a boolean parameter.
- Put blank lines between logical blocks. Let the reader breathe.
- Comment what a block does and why, briefly. Use an example where it helps; offer an ASCII diagram when explaining a whole system.
- Treat a visibility change as a breaking design shift. Keep things private or unexported unless the design requires external access, and ask before widening one.
- Program to levels of abstraction. Low-level mechanics (raw SQL, socket streams, vendor SDK calls, file parsing) live behind a driver or service layer; callers work in domain concepts.
- Hold the layer boundaries. Each layer talks only to the one directly below it, with no holes punched through: a UI component never calls the database or a raw HTTP client directly.
- Don't touch code unrelated to the feature you're implementing, including adding comments to blocks you didn't write. Minimize changed lines.
- Always use braces, even on a one-line
if. - Fixing a bug: write the failing test first, watch it fail, then write the fix and watch it pass.
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 · 62 lines · 827 tokens per session scan A 72654a1f1519
pm-copilot AGENTS.md is an instructions file published in the GitHub repository dkships/pm-copilot (29 stars, last pushed 9d ago), licensed MIT. It adds 827 tokens to every session, about $0.0041 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
Noema AGENTS.md
Instructions for Fail-Safe/Noema, covering repository guidelines, project structure & module organization, build, test, and development commands, coding style & naming conventions and testing guidelines.
video-research-mcp AGENTS.md
Instructions for Galbaz1/video-research-mcp, covering agents.md, scope, what this is, commands and code review trigger protocol.
documcp copilot-instructions.md
Instructions for tosin2013/documcp, covering documcp ai coding agent instructions, architecture essentials, mcp server design (src/index.ts), tool implementation pattern and knowledge graph memory (src/memory/).
pdf-toolkit-mcp CLAUDE.md
Instructions for AryanBV/pdf-toolkit-mcp, covering pdf-toolkit-mcp, 1. project overview, 2. tech stack, 3. project structure and 4. mcp sdk patterns.
omnivox-mcp CLAUDE.md
Instructions for Beat-YT/omnivox-mcp, covering claude.md, project overview, commands, transport modes and architecture.
clawstash CLAUDE.md
Claude Code instructions for fo0/clawstash, covering claude.md -- project guide, session start -- read order, workflow triggers, output languages and performance / modes.