getvect: Instructions file for Codex

AGENTS.md

getvect AGENTS.md is an instructions file for Codex, OpenCode from craigjmidwinter/getvect. It costs 961 tokens per session, scanned A, original, MIT.

Project instructions for GetVect, a local desktop app that turns image files into formats such as SVG, EPS, DXF, PDF, and PNG. They describe the required checks, project rules, and safety conditions for code changes.

In plain words
What is it for?
Use them when changing GetVect code, running its type checks and tests, updating assets, or reviewing a pull request.
Why use it?
They give a coding agent the project context needed to make changes without breaking its conversion engine or verification checks.

Instructions file for CodexOpenCode

Written for Codex and OpenCode: the file is AGENTS.md. Also seen: mentions AGENTS.md.

This is craigjmidwinter/getvect's own configuration. It tells Codex and OpenCode how to work on getvect itself, so it is not a mod to install elsewhere. Copy it as a starting point and replace the rules that are about this project. Everything getvect configures →

Reuse

Borrowing it

Nothing to install: this file belongs to craigjmidwinter/getvect. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.

Copy the file
curl -O https://raw.githubusercontent.com/craigjmidwinter/getvect/main/AGENTS.md
Clone the repo
git clone --depth 1 https://github.com/craigjmidwinter/getvect

Made for: Codex, OpenCode.

Wrote 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.

agentmods badge for getvect AGENTS.md

README.md
[![agentmods](https://agentmods.dev/badge/instructions/craigjmidwinter/getvect/agents-md/github.svg)](https://agentmods.dev/instructions/craigjmidwinter/getvect/agents-md)
Your own site
<a href="https://agentmods.dev/instructions/craigjmidwinter/getvect/agents-md"><img src="https://agentmods.dev/badge/instructions/craigjmidwinter/getvect/agents-md/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.

agentmods 80×15 button for getvect AGENTS.md

Your own site · 80×15
<a href="https://agentmods.dev/instructions/craigjmidwinter/getvect/agents-md"><img src="https://agentmods.dev/badge/instructions/craigjmidwinter/getvect/agents-md.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 961 This file is loaded in full into every session.
When invoked 961 The same file — it is already loaded in full.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

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.

ModelPer sessionOnce invoked
Fable 5.1 $0.00961 $0.00961
Opus 5.5 $0.00384 $0.00384
Sonnet 5.5 $0.00192 $0.00192
Haiku 4.5 $0.00096 $0.00096

Measured 2mo ago against content hash 5534d3470308, method: parsed. Prices are Anthropic first-party input rates as of 2026-10-07, from the pricing page.

Security

Grade A, and why

getvect 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 2mo 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.

AGENTS.md · 69 lines

How it starts

The opening of the file, as written. The whole thing — 69 lines — stays where its author put it; the contents beside it link to each section on GitHub.

AGENTS.md

GetVect is a local desktop vectorizer: an Electron app (TypeScript; React renderer, pure-Node engine in src/engine/) that turns PNG/JPEG/BMP into SVG/EPS/DXF/PDF/PNG on the user's machine — no accounts, no server, offline by default. The engine is deterministic and heavily instrumented; the measurement harness, not opinion, decides whether a change ships.

Commands (green on a clean checkout)

npm install          # ~10 s; postinstall de-quarantines Electron on macOS
npm run typecheck    # tsc strict, both configs
npm run test:engine  # the engine contracts, pure Node, ~20 s — the fast gate
npm test             # engine contracts + full Playwright acceptance suite (~3 min)
npm run instruments  # corpus metrics + threshold gates → artifacts/metrics.json
npm run assets       # regenerate derived/demo assets (CI fails if stale)

There is no linter yet (tracked in katra/tasks/); tsc strict is the only style gate. Match the surrounding code's comment density and idiom — comments in this repo state constraints and reasoning, not narration.

Invariants a PR must not break

  • The harness decides. Read docs/HARNESS.md before touching the engine. Corpus fixtures decide; in-house artwork (Frankie) reports but cannot carry a decision. A rate measured over a short boundary is not a defect. State the window of every measurement.
  • Determinism: same image + same settings = byte-identical SVG. Tested.
  • Sharp corners stay sharp. The de-staircasing failure mode is rounding what was meant to be angular; the mascot's ear tip is the canary and tests/engine/sharp-corners.test.mjs enforces it.
  • DEAD GATE rule: a declared threshold whose metric is not produced fails the runner. Never leave a gate that cannot go red.
  • The CLI exit codes and flags are a published interface, in the same class as the on-disk katra format, not an internal enum. They are documented in SKILL.md and docs/CLI.md as a contract an outside caller can be written against. No such caller is known today: the reason to freeze the table is that nobody can build against one that moves, so stability is what makes an integration possible at all. Adding a code or flag is free; renumbering or removing one breaks a caller silently, since their branch just stops matching. skill-doc.test.mjs pins both tables by name and fails even when the docs move in the same commit. Change them deliberately and with a note, never as a refactoring side effect.
  • Asset staleness gate: derived assets (screenshots, demo media, icons) are regenerated by committed scripts only — never hand-edited; CI runs regenerate-derived-assets.mjs --check and fails on drift.
  • Exactly two network touchpoints, both in src/main/: the once-per-launch release-feed check (opt-out via GETVECT_NO_UPDATE_CHECK) and opt-in AI Enhance with a user-supplied key (encrypted via safeStorage, never returned to the renderer). Nothing else may touch the network; the renderer ships CSP default-src 'self'.
  • Provenance is enforced. Nothing enters fixtures/ without a stated redistributable licence (build fails). Never vendor, commit, or quote competitor output — this repo's history was rewritten once to purge exactly that. The devlog publishes only via the opt-in gate (scripts/devlog-gate.mjs); its forbidden-names list is load-bearing.
  • Tests are invisible. The acceptance suite drives real Electron windows that are never shown (z-window-guard.spec.ts enforces it). Never launch the app headed from an agent session.

Read the full file on GitHub · 69 lines

Changes

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.

  1. 2mo ago First seen · 69 lines · 961 tokens per session scan A 5534d3470308

Subscribe to this mod's changes

getvect AGENTS.md is an instructions file published in the GitHub repository craigjmidwinter/getvect (103 stars, last pushed 10d ago), licensed MIT. It adds 961 tokens to every session, about $0.0038 per session on Opus 5.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.

Related

getvect AGENTS.md compared with instructions from other repositories

getvect AGENTS.md next to 6 instructions from other repositories
ModTypeStarsLast pushLicenceScanTokensWorks with
getvect AGENTS.mdcraigjmidwinter/getvectInstructions file10310d agoMITA961Codex, OpenCode
vscode buildNext.instructions.mdmicrosoft/vscodeInstructions file195ktodayMITA9,719GitHub Copilot
next.js AGENTS.mdvercel/next.jsInstructions file143ktodayMITA7,461Codex, OpenCode
vscode oss-third-party-notices.instructions.mdmicrosoft/vscodeInstructions file195ktodayMITA5,516GitHub Copilot
langchain AGENTS.mdlangchain-ai/langchainInstructions file149ktodayMITA4,680Codex, OpenCode
vscode copilot-instructions.mdmicrosoft/vscodeInstructions file195ktodayMITA3,093GitHub Copilot
deepseek-harness AGENTS.mddeepseek-ai/deepseek-harnessInstructions file275k3d agoMITA4,313Codex, OpenCode