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 skills add ngocsangyem/MeowKit --skill project-contextgit clone --depth 1 https://github.com/ngocsangyem/MeowKitWrote 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/skills/ngocsangyem/meowkit/project-context)<a href="https://agentmods.dev/skills/ngocsangyem/meowkit/project-context"><img src="https://agentmods.dev/badge/skills/ngocsangyem/meowkit/project-context/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/skills/ngocsangyem/meowkit/project-context"><img src="https://agentmods.dev/badge/skills/ngocsangyem/meowkit/project-context.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.00044 | $0.01028 |
| Opus 5 | $0.00022 | $0.00514 |
| Sonnet 5 | $0.00009 | $0.00206 |
| Haiku 4.5 | $0.00004 | $0.00103 |
Grade A, and why
mk:project-context 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 9d 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 — 113 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Project Context Generator
Creates docs/project-context.md — the agent "constitution" that every agent loads on activation.
To generate the full documentation suite (README, architecture, code standards, etc.), use
mk:docs-initinstead.mk:project-contextgenerates only the agent constitution.
Purpose
Eliminate context drift between agents. Without a single authoritative file, agents infer conventions independently and make conflicting decisions. Project context solves this by providing one document all agents read first.
Actions
generate
Scan the codebase and create docs/project-context.md from scratch.
Scan targets:
package.json/Cargo.toml/go.mod/pyproject.toml→ tech stacktsconfig.json/eslint.*/prettier.*→ code conventions**/test/**/**/*.test.*/**/*.spec.*/**/*.cy.*→ testing patterns- Existing
docs/→ architecture decisions, prior context .env.example→ environment variables (names only, not values)
Output: docs/project-context.md using templates/project-context-template.md
update
Re-scan codebase and update existing docs/project-context.md. Preserves manual edits in sections marked <!-- manual -->.
init
Write a TODO-filled skeleton to docs/project-context.md for greenfield projects
where generate would produce empty sections (no codebase to scan yet).
Behaviour:
- If
docs/project-context.mdalready exists → refuse with error. Useupdateinstead. - If absent → write
templates/skeleton.mdtodocs/project-context.md. - Creates
docs/directory if it does not exist.
When to use init vs generate:
| Situation | Action |
|---|---|
| Empty or near-empty project, < 5 source files | init — fill manually |
| Established project with real code | generate — auto-derive |
Existing docs/project-context.md is stale |
update — re-scan, preserve manual edits |
When to Run
- First time: After
mk:bootstrapormk:docs-init - After architecture changes: New framework, new database, major refactor
- Periodically: When agents produce inconsistent code (symptom of stale context)
What ships with it
2 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
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.
- 9d ago First seen · 113 lines · 44 tokens per session scan A ebbb1b242a67
mk:project-context is a skill published in the GitHub repository ngocsangyem/MeowKit (14 stars, last pushed 1mo ago), licensed MIT. It adds 44 tokens to every session and 1,028 once invoked, about $0.0002 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-09-03.
Other skills, from other repositories
learn-from-fix
Capture Elixir/Ecto/LiveView lessons and Hex API rules. Use after corrections or when asked to document learning, record a lesson, prevent a fixed mistake, or remember package guidance with --library.
recall
Recall prior work from past sessions — how a bug was fixed, what was decided, where a pattern lives. Use when asked 'have we done this before' or 'how did I fix X' in Elixir/Phoenix work. ccrider MCP when available, else git + solution docs.
assigns-audit
Inspect LiveView socket assigns for memory bloat — missing temporaryassigns, unused assigns, unbounded lists needing streams, memory estimates. Use when LiveView memory grows or you need to add temporaryassigns.
compound-docs
Searchable Elixir/Phoenix/Ecto solution documentation system with YAML frontmatter. Builds institutional knowledge from solved problems. Use when consulting past solutions before investigating new issues.
continuous-learning-construction
Automatically extract patterns, best practices, and reusable knowledge from construction automation sessions to improve future performance.
remarkable-memory
Turns handwritten reMarkable notes into a queryable semantic memory. Syncs pages from a reMarkable tablet (via the reMarkable MCP server, rmapi, or a USB/SSH bridge), renders each page to an image and reads the handwriting with Claude vision — no OCR key — then extracts each page into confidence-scored, human-editable…