mk:project-context — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited mk:project-context (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
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.), usemk:docs-initinstead.mk:project-contextgenerates only the agent constitution.
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.
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 patternsdocs/ → architecture decisions, prior context.env.example → environment variables (names only, not values)Output: docs/project-context.md using templates/project-context-template.md
Re-scan codebase and update existing docs/project-context.md. Preserves manual edits in sections marked <!-- manual -->.
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:
docs/project-context.md already exists → refuse with error. Use update instead.templates/skeleton.md to docs/project-context.md.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 |
mk:bootstrap or mk:docs-initThe template emphasizes facts agents cannot infer from code:
See templates/project-context-template.md for the full structure.
update after major architecture changes<!-- manual --> sections survive update action but NOT generate — backup before regenerating from scratchinit refuses to overwrite an existing docs/project-context.md — this is intentional. Delete the file manually if you truly want to reset to a blank skeleton.All agents load docs/project-context.md in their Required Context section. If the file doesn't exist, agents behave exactly as before (graceful degradation).
SKILL.md — you are heretemplates/project-context-template.md — output template used by generate actiontemplates/skeleton.md — TODO-placeholder constitution template used by init action~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.